diff --git a/README.md b/README.md new file mode 100644 index 0000000..a5811d9 --- /dev/null +++ b/README.md @@ -0,0 +1,31 @@ +# OTA Fleet Management - Backend API + +This project hosts the ASP.NET Core Web API for the OTA Fleet Management System. It handles vehicle registration, group management, firmware uploads, and deployment orchestration. + +## Tech Stack +* **.NET 9 / ASP.NET Core**: High-performance web framework. +* **Entity Framework Core**: ORM for data access. +* **SQLite**: Lightweight database (configured for In-Memory for tests/demo, file-based for persistence). + +## Key Features +* **Vehicle Management**: Register vehicles, heartbeat tracking. +* **Group Management**: Organize vehicles into logical groups (e.g., "Beta", "Production"). +* **Firmware Repository**: Upload and version firmware files. +* **Deployment Logic**: Assign updates to specific vehicles or entire groups. +* **Object Cycle Handling**: Configured to handle bidirectional relationships in JSON serialization. + +## Getting Started + +1. **Run the API**: + ```bash + dotnet run + ``` + The API listens on `http://localhost:5000` (HTTP) and `https://localhost:5001` (HTTPS) by default. + +2. **API Documentation**: + Navigate to `http://localhost:5000/swagger` to view the Swagger UI and test endpoints. + +## Project Structure +* `Endpoints/`: Minimal API endpoint definitions. +* `Data/`: EF Core DbContext and Entities. +* `Properties/launchSettings.json`: Configuration for local development ports.