Полный стек с открытым исходным кодом с открытым исходным кодом.
- Конфигурация и настройка
- Ключевые функции
- Технологии используются
- Frontend (Mobile)
- Бэкэнд
- База данных
- ? Макеты
- ? Проект видео
- Автор
- Лицензия
Конфигурация и настройка
Чтобы запустить этот проект локально, просто разветвляется и клонируйте репозиторий или загрузите как zip и unzip на вашей машине.
- Откройте проект в своем предпочтительном редакторе кода.
- Перейдите в терминал -> новый терминал (если вы используете код VS)
- Сначала вам нужно запустить сервер NGROK. Этот сервер не должен быть выключен для работы проекта
- Затем откройте другой терминал. Разделите свой терминал пополам (запустите сервер в одном терминале и клиенте в другом)
NGROK-это программное обеспечение, которое позволяет нам открывать наши приложения, которые мы запускаем на LocalHost на нашем собственном компьютере, над облаком, под подразделением xxx.ngrok.io. Ngrok Setup.
1- для разоблачения сервера с помощью NGROK;
- Затем скопируйте URL -адрес ngrok на запуска сервера
- CD Client и вставьте ngrok_url в .env под ./client
- Теперь связь с клиентом обеспечивается
NGROK_URL = "http://_______.ngrok.io"
2- в другом терминале;
В первой половине терминала
$ cd Client
$ npm install (to install client-side dependencies)
$ expo r -c
Во второй половине терминала
- CD -сервер и установите переменные среды в config.env под ./config/env
- Создайте URL -адрес соединения MongoDB, который вы используете в качестве mongo_uri
- Предоставить следующие полномочия
# --- Config.env ---
NODE_ENV = development
PORT =5000
MONGO_URI =
JWT_SECRET_KEY =
# --- Terminal ---
$ npm install (to install server-side dependencies)
$ npm start (to start the server)
Ключевые функции
- ✔ Пользовательская регистрация и вход в систему
- ✔ Аутентификация с использованием токенов JWT
- ✔ Любимый, комментировать и добавить продукты в корзину
- ✔ Выберите продукты в соответствии с информацией о цвете и размере и добавьте их в корзину
- ✔ Показывая новейшие продукты, которые вы просмотрели, и аналогичные рекомендации по продукту
- ✔ Страница категорий продуктов и отображение подкатегорий
- ✔ Поиск продуктов по названию, бренду и категории
- ✔ Увеличение, уменьшение или удаление количества каждого элемента в корзине
- ✔ Приема заказов путем выбора адреса доставки и банковской карты
- ✔ Подробная страница, показывающая все размещенные заказы, и последнее состояние продуктов (время доставки, дата доставки) для каждого заказа
- ✔ Страницы смены электронной почты и пароля.
- ✔ Внимание было уделено обработке ошибок
- Забыли страницу пароля и сброс пароля
- Добавление фотографий в комментарии
- Войти в учетную запись Google
- Создание пользовательской страницы для каждого бренда
- Добавление платежной системы (полоса)
- Запросы иногда обрабатываются медленно и вызывают проблемы, когда они выпускаются одновременно (может ли архитектура микросервиса быть решением ?.)
Технологии используются
Этот проект был создан с использованием следующих технологий.
Frontend (Mobile)
- React JS - библиотека JavaScript, которая используется для создания пользовательских интерфейсов конкретно для одностраничных приложений
- React Hooks - для управления и централизации состояния приложения
- React Native - кроссплатформенная структура разработки мобильных приложений
- React Navigation V6 - Маршрутизация и навигация для выставки и реагировать нативные приложения
- Axios - для вызова API
- React-Native-Bouncy-Checkbox
7.2.1 - React-Element-TextInput
2.2.0 - React-C-Gesture-Bottom-Sheet
1.1.0 - Реактивные индикаторы
0.17.0 - Реактивно-модал
13.0.1 - React-Con-Popup-Menu
0.16.1 - React-Con-Progress
5.0.0 - Реактивные нормы
8.1.0 - React-Native-Safe-Area-Context
4.4.1 - React-Con-Simple-Dialogs
1.5.0 - React-Con-Step-Indicator
1.0.3 - React-National-Message
2.1.6 - React-Textarea-Autosize
2.1.6
Бэкэнд
- Node JS - среда времени выполнения, чтобы помочь создать быстрые серверные приложения с помощью JS
- Express JS -сервер для обработки и маршрутизации HTTP -запросов
- Mongoose - Для моделирования и отображения данных MongoDB с JavaScript
- Express-Async-Handler-простое промежуточное программное обеспечение для обработки исключений внутри Async Express Routes и передачи их обработчикам Express Error
- jsonwebtoken - для аутентификации
- bcryptjs - для шифрования данных
- Dotenv - модуль нулевой зависимости, который загружает переменные среды
- Multer - Node.js Middleware для загрузки файлов
- CORS - предоставляет промежуточное программное обеспечение Connect/Express
- uuid - для случайного генератора идентификации
База данных
- MongoDB - он предоставляет бесплатный облачный сервис для хранения коллекций MongoDB.
Макеты

















Автор
Github: @muhammet-yildiz
LinkedIn: @muhammet-yildiz
Электронная почта: [email protected]
Если вам нравится проект, не забудьте дать звезду
Лицензия
Copyright 2023 Muhammet Yıldız
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Проект видео
Hizlisepet.mp4