Этот проект представляет собой упрощенную внедрение системы покупок, проект направлен на предоставление основных функций, которые, как ожидается, будут найдены в мобильном приложении электронной коммерции, где пользователи могут покупать и продавать продукты. Чтобы перемещаться по приложению, пользователи должны аутентифицировать себя. После регистрации пользователи могут прокручивать список доступных продуктов, добавлять различные продукты в корзину и делать заказы. Пользователи также могут добавить, редактировать, удалять свои собственные продукты в основной магазин.
Приложение содержит простую систему аутентификации, реализованную с использованием API Firebase Auth REST для бэкэнда. Если процесс аутентификации успешным, уникальный токен отправляется из бэкэнда к пользователю, в токен, токен затем хранится локально на устройстве и истекает точно после 1H от его получения. Срок действия токена удаляется с устройства, а пользователь будет автоматически подписан и запрашивается на экране входа. В противном случае, если что -то пошло не так с процессом аутентификации, на экране будет отображаться надлежащее сообщение об ошибке.
Чтобы убедиться, что правильные учетные данные должны быть предоставлены всякий раз, когда пользователь вводит некоторые данные, все формы в этом проекте содержат некоторые основные алгоритмы проверки, которые используются повторно, когда требуется проверка.
Большинство данных в этом проекте (продукты, заказы, пользователи) хранятся в базе данных Firebase Realtime. Некоторые другие конкретные пользовательские данные (Auth-Token, любимые продукты) хранятся локально в устройстве с использованием AsyncStorage.
Вся навигация в этом проекте построена с React Navigation V5.
Приложение содержит различные типы анимации на разных экранах, чтобы обеспечить более плавный пользовательский опыт, все анимации реализуются с использованием нативной библиотеки Native Resipt, что означает, что подавляющее большинство расчетов, необходимых для анимирования различных свойств стиля при 60 кадров в секунду даже на низкокачественных устройствах.
Все дизайнерские активы, используемые в этом приложении (экраны, компоненты, значки ...) сделаны владельцем этого проекта.
Чтобы запустить проект локально запустить следующие команды по порядку:
Клонировать проект локально
$ git clone https://github.com/abdoutech19/shop-app.git
Перейдите в каталог Project Root
$ cd shop-app
Установите все зависимости
$ yarn install || npm install
Запустите проект в режиме отладки
$ npx react-native run-android
Или запустите проект в режиме выпуска для более плавного опыта
$ npx react-native run-android --variant=release
Примечание. В этом проекте используется двигатель Hermes JavaScript для улучшения времени запуска, уменьшения использования памяти и уменьшения размера приложения. Чтобы эти улучшения вступили в силу, приложение должно работать в режиме выпуска , в противном случае Hermes не окажет какого -либо влияния на повышение производительности в режиме отладки , на самом деле некоторые разработчики заметили более медленные результаты с включенным двигателем Hermes в режиме отладки .
Чтобы проверить приложение в вашем устройстве Android, вы можете скачать файл .apk отсюда: покупки.
Распределено по лицензии MIT. Смотрите лицензию для получения дополнительной информации.
Напишите мне по адресу: [email protected].