Подключите нашего Telegram-бота для уведомлений о новых проектах
Front-end разработчик для web app (iOS / Android) (такси сервис)
Разместить заказ
p
Заказчик
Отзывы фрилансеров:
+ 5
- 0
Зарегистрирован на сайте 9 лет
Бюджет:
45 000 руб
548.65 $ — 482.57 €
Необходимо сверстать web-app по работающему бэкенду и готовому дизайну в Figma (~35 экранов)
Требования:
1. Все экраны необходимо разделить на логические компоненты и шаблоны (например, структура меню, шторка снизу с минимальным-средним-максимальным положением в зависимости от состояния, библиотека элементов (кнопки, переключатели и т.д)
2. Все переходы элементов должны содержать анимации (открытие меню, нажатие кнопок, ввод данных, сворачиваниеразворачивание шторки с контентом и другие)
3. Верстка должна быть адаптивной. Адаптивная верстка предусматривает работу на планшетах и смартфонах. В случае работы на планшетах, постоянно показывается боковое меню.
4. Валидация форм на базовые параметры (email, телефон, заполненность имени).
5. Выбор автомобилей с возможностью автоподстановки значений из cars_csv
6. Комментарии в коде JS
7. Восстановление состояния после сбоев приложения (сообщения о текущем состоянии приходят с бэкенда при подключении к socket-io)
8. Обработка исключений: потеря сети (offline-mode), ошибки с бэкенда
9. При отсутствии разрешений (уведомления, геолокация) – показывать сообщения о запросе о разрешении. Запрос на разрешения должен быть сначала показан элементом приложения, а затем обращаться к браузерным функциям после подтверждения пользователем (исключения случайного отказа в разрешениях)
10. Финальный размер – важен. Необходимо исключить использование зависимостей, которые не вызываются
11. Транспорт до бэкенда реализован на: https + socket-io
12. Транспорт от бэкенда (сообщения о статусах) реализован на:
- При выключенном экране – web-push (обработка входящих данных в service-worker) или onesignal push (обработка данных в приложении)
- При включенном экране – socket-io
- В небольшой части функционала – ответ на https запросы
13. Собирать события (нажатия, переходы, и т.д.) в отдельную функцию для работы с вешней аналитикой. Внутри этой функции подключение к Matomo
14. Проброс маркетинговых кодов (должны передаваться из адресной строки) в форму регистрации
15. Необходимо реализовать js-функции – адаптеры от pwa для работы с cordova в части уведомлений, управление состоянием экрана (always-on), перехода по внешним ссылкам
16. Готовность к интернационализации. В текущем проекте только 1 язык (русский), но все текстовые поля необходимо брать из словаря.
17. Обязательно ведение репозитория git и домена на surge.sh (или аналога)
Требования к опыту:
1. Опыт работы с: leaflet, socket-io
2. Базовый опыт с Apache Cordova (понимание того, в какой момент инициализируются и становятся доступными плагины)
3. Подтвержденный опыт реализации PWA (примеры обязательно)
Что на вход:
1. Макет в Figma
2. Документация Swagger для API
3. Работающий бэкенд
4. Комментарии и описание данных для socket-io части и пуш уведомлений по запросу
Что на выход:
1. Frontend-проект со всеми исходниками
2. Инструкции по сборке проекта, краткое описание исходников
3. Демонстрационный стенд (не будет нужен после приема работы)
Требования:
1. Все экраны необходимо разделить на логические компоненты и шаблоны (например, структура меню, шторка снизу с минимальным-средним-максимальным положением в зависимости от состояния, библиотека элементов (кнопки, переключатели и т.д)
2. Все переходы элементов должны содержать анимации (открытие меню, нажатие кнопок, ввод данных, сворачиваниеразворачивание шторки с контентом и другие)
3. Верстка должна быть адаптивной. Адаптивная верстка предусматривает работу на планшетах и смартфонах. В случае работы на планшетах, постоянно показывается боковое меню.
4. Валидация форм на базовые параметры (email, телефон, заполненность имени).
5. Выбор автомобилей с возможностью автоподстановки значений из cars_csv
6. Комментарии в коде JS
7. Восстановление состояния после сбоев приложения (сообщения о текущем состоянии приходят с бэкенда при подключении к socket-io)
8. Обработка исключений: потеря сети (offline-mode), ошибки с бэкенда
9. При отсутствии разрешений (уведомления, геолокация) – показывать сообщения о запросе о разрешении. Запрос на разрешения должен быть сначала показан элементом приложения, а затем обращаться к браузерным функциям после подтверждения пользователем (исключения случайного отказа в разрешениях)
10. Финальный размер – важен. Необходимо исключить использование зависимостей, которые не вызываются
11. Транспорт до бэкенда реализован на: https + socket-io
12. Транспорт от бэкенда (сообщения о статусах) реализован на:
- При выключенном экране – web-push (обработка входящих данных в service-worker) или onesignal push (обработка данных в приложении)
- При включенном экране – socket-io
- В небольшой части функционала – ответ на https запросы
13. Собирать события (нажатия, переходы, и т.д.) в отдельную функцию для работы с вешней аналитикой. Внутри этой функции подключение к Matomo
14. Проброс маркетинговых кодов (должны передаваться из адресной строки) в форму регистрации
15. Необходимо реализовать js-функции – адаптеры от pwa для работы с cordova в части уведомлений, управление состоянием экрана (always-on), перехода по внешним ссылкам
16. Готовность к интернационализации. В текущем проекте только 1 язык (русский), но все текстовые поля необходимо брать из словаря.
17. Обязательно ведение репозитория git и домена на surge.sh (или аналога)
Требования к опыту:
1. Опыт работы с: leaflet, socket-io
2. Базовый опыт с Apache Cordova (понимание того, в какой момент инициализируются и становятся доступными плагины)
3. Подтвержденный опыт реализации PWA (примеры обязательно)
Что на вход:
1. Макет в Figma
2. Документация Swagger для API
3. Работающий бэкенд
4. Комментарии и описание данных для socket-io части и пуш уведомлений по запросу
Что на выход:
1. Frontend-проект со всеми исходниками
2. Инструкции по сборке проекта, краткое описание исходников
3. Демонстрационный стенд (не будет нужен после приема работы)
Разделы:
Опубликован:
05.03.2020 | 11:39 [последние изменения: 20.03.2020 | 16:48]