API для проекта Интернет-магазин обуви
API для проекта Интернет-магазин обуви на ASP.NET
API задокументирован с помощью Swagger
Проект структурирован по принципам clean architecture
Реализован CQRS
с помощью MediatR
В качестве ORM используется Entity Framework
, в качестве СУБД PostgreSql
Для хранения изображений обуви используется MinIo
Аутентификация реализована через JWT
токены
Есть модульные и интеграционные тесты
Тесты написаны с помощью xUnit
и FluentAssertions
Интеграционные тесты реализованы с помощью testcontainters
(и respawn
) (поэтому нужен докер для их прогонки)
С этим API связано ещё 2 на django rest framework
и php slim framework
, но они менее серьезные и уже не актуальны (актуальны для версии фронта v2.0)
(см Related Repositories)
Пока реализован минимум:
- Просмотр каталога обуви сортировкой, пагинацией, поиском и фильтрами (брэнды, назначения, сезоны, размеры)
- Создание заказа
- Личный кабинет (регистрация, аутентификация, изменение данных, удаление профиля, история заказов)
Фильтры для обуви пока автоматически инициализируются в базе через миграции,
а создать обувь пока можно только через api, предварительно загрузив файл изображения обуви через api
Планируется создать отдельный сайт для админа
-
git clone https://github.com/Skye7012/ShoesApi.git
-
cd ShoesApi
-
docker-compose build
-
docker-compose up
-
Фронт: http://localhost:8081
-
MinIO: http://localhost:9003/login
Volumes для БД и MinIO создадутся на уровень выше корневой директории
Для того, чтобы полноценно пользоваться фронтом, нужно создать обувь через API (см. бизнес-логика)