Веб-приложение для отслеживания статуса заказов.
- assets - сваггер, скриншоты интерфейса
- docs - связанные с проектом документы: тз, планы
- Client - фронтенд часть приложения
- Server - бекенд часть приложения
В проекте используется .NET Aspire. Чтобы с ним работать, требуется следующее:
- .NET 8.0 или .NET 9.0
- Docker Desktop
- IDE:
- Visual Studio 2022 версии 17.9 или выше (Опционально)
- Visual Studio Code (Опционально)
- C# Dev Kit: Extension (Опционально)
- JetBrains Rider with .NET Aspire plugin (Опционально)
- Node.js версии 20.х или выше
Детальнее об .NET Aspire
Прежде, чем запускать:
- Запустите docker
- Установите при необходимости зависимости
npm iклиентского приложения в папкеClient(Опционально)
Имеется два способа запуска приложения:
- Через aspire
- Стандартный - каждое приложение в отдельности
Способ 1. Чтобы запустить через aspire можно использовать cli
dotnet run --project Server/Aspire.AppHostИли через IDE запустить проект Aspire.AppHost. В итоге запустится дашборд и поднимутся все контейнеры, связи.
Способ 2.
В этом способе придется вручную конфигурировать все строки соединения и вручную запускать контейнеры.
Основными приложениями являются Server/Orders и Client.
Серверное приложение запускается аналогично 1-му способу.
Клиентское приложение запускается командой npm run dev из папки Client.
Backend:
- .NET 8, ASP.NET Core Web API
- EF Core
- PostgreSQL
- RabbitMQ
- .NET Aspire для локальной оркестрации и observability
- OpenTelemetry для метрик, трассировки и логов
Frontend:
- TypeScript
- React
- Server-sent events
- Zustand