Auto Catalog — это полнофункциональное веб-приложение для публикации и просмотра объявлений о продаже автомобилей.
Проект задуман как учебный (pet) для закрепления навыков fullstack-разработки, работы с базами данных, авторизации, интеграции фронтенда и бэкенда, а также деплоя в контейнерах.
- Создание, редактирование и удаление объявлений
- Авторизация и аутентификация через JWT + HttpOnly cookies
- Защищённые маршруты и роли
- Просмотр объявлений с фильтрацией и пагинацией
- Поддержка работы на разных доменах с корректной CORS-настройкой
- Чёткое разделение слоёв по Clean Architecture
- Оптимизация запросов через
ProjectTo(AutoMapper) - Возможность горизонтального масштабирования (Redis, Kafka в планах)
- Лёгкий деплой через Docker Compose
- Интеграционные тесты и GitHub Actions
- Язык: C# / .NET 8
- Фреймворк: ASP.NET Core Web API
- БД: PostgreSQL + Entity Framework Core
- Архитектура: Clean Architecture (Domain, Application, Infrastructure, WebApi)
- Аутентификация: JWT + HttpOnly cookies
- Интеграции: CORS с поддержкой cross-domain
- DI и SOLID принципы
- UI: React 18
- Запросы: Axios
- Docker & Docker Compose — развёртывание фронта, бэка и базы данных
- .env переменные — настройка подключения и ключей
- Планы: Redis для кэша, Kafka для микросервисного взаимодействия
- Загрузка фото через распеределённое хранилище
- Кэширование через Redis
- Аналитика
- Встраивание Kafka для микросервисов
- Роли и права
- CI/CD
Backend:
cd WebApi/
dotnet runFrontend:
cd frontend/
npm run dev