Skip to content

Latest commit

 

History

History
117 lines (84 loc) · 5.45 KB

README.md

File metadata and controls

117 lines (84 loc) · 5.45 KB

Простой магазин на JavaScript

Простой магазин на JavaScript

  1. Серверное приложение, база данных, ORM Sequelize
  2. Обрабатываем HTTP запросы, добавляем маршруты
  3. Добавляем классы контроллеров, обработка ошибок
  4. CRUD для категорий и товаров, загрузка изображений
  5. Создание моделей, фильтрация по категрии и бренду
  6. Пагинация, свойства товара, JWT (JSON Web Token)
  7. Регистрация и авторизация, права пользователей, тесты
  8. Работа со свойствами товара и корзиной покупателя
  9. Рейтинг товара, приложение клиента, структура проекта
  10. Маршруты, панель навигации, контекст приложения
  11. Компоненты Signup и Login, компоненты Shop и Basket
  12. Запросы на сервер, состояние приложения, Signup и Login
  13. Хранилище каталога, компонент витрины, кнопка «Назад»
  14. Кнопка «Назад», страница товара, корзина покупателя
  15. Работа с заказами на сервере, оформление заказа
  16. Личный кабинет, список заказов и отдельный заказ
  17. Панель управления: список заказов, категорий и брендов
  18. Панель управления: редактирование категорий и брендов
  19. Редактирование характеристик и рефакторинг приложения

Чтобы развернуть проект, клонируем этот репозиторий к себе на компьютер, в директорию shop

git clone git@github.com:tokmakov/javascript-shop.git shop

Создаем базу данных с помощью утилиты psql

/path/to/postgre/bin/psql -U postgres
Пароль: qwerty

postgres=# CREATE DATABASE online_store;

postgres=# \q

Имя БД и логин-пароль прописывам в server/.env

DB_HOST=localhost
DB_NAME=online_store
DB_USER=postgres
DB_PASS=qwerty
DB_PORT=5432

Переходим в директорию shop/server, устанавливаем пакеты, запускаем сервер

cd /path/to/shop/server
npm install
npm run start-dev

Переходим в директорию shop/client, устанавливаем пакеты, запускаем клиент

cd /path/to/shop/client
npm install
npm start

Примечания

Таблицы базы данных будут созданы при первом запуске приложения, но они будут пустыми. Можно импортировать базу данных из файла database.sql, в которой уже есть категории, бренды, товары, пользователи и т.д.

/path/to/postgre/bin/psql -U postgres online_store < /path/to/shop/database.sql
Пароль: qwerty

Здесь postgres — имя пользователя БД, qwerty — пароль для доступа к БД, online_store — имя базы данных магазина.


Дамп базы данных database.sql был создан с помощью утилиты pg_dump на заключительном этапе разработки магазина

/path/to/postgre/bin/pg_dump -U postgres online_store > /path/to/shop/database.sql
Пароль: qwerty

Здесь postgres — имя пользователя БД, qwerty — пароль для доступа к БД, online_store — имя базы данных магазина.


Список баз данных можно посмотреть, если запустить утилиту psql и выполнить SELECT-запрос

/path/to/postgre/bin/psql -U postgres
Пароль: qwerty

postgres=# SELECT datname FROM pg_database;

datname
-----------------
postgres
online_store
template1
template0

postgres=# \q

Дамп базы данных содержит несколько пользователей, как обычных, так и с правами администратора

  • Пользователь user@mail.ru, пароль qwerty
  • Пользователь admin@mail.ru, пароль qwerty