backend for mobile and desktop done