Full-stack ASP.NET project for managing a personal game library.
The solution includes a Web API, a Blazor frontend, shared DTOs/enums, and API integration tests. It lets you create, read, update, and delete games, then view and edit them from the UI.
GameLibraryApi: ASP.NET Core Web API with Entity Framework Core and SQLiteGameLibraryFrontend: Blazor web frontend for listing, creating, editing, deleting, and viewing basic statisticsGameLibrary.Shared: shared DTOs and enums used by both backend and frontendGameLibraryApi.Tests: integration tests for the API
- CRUD operations for games
- Search by title
- Filter by status
- Filter by platform
- Shared contracts between API and frontend
- Blazor frontend for game management
- Simple statistics page
- SQLite database with Entity Framework Core
- API integration tests
- C#
- ASP.NET Core Web API
- Blazor
- Entity Framework Core
- SQLite
- OpenAPI
- xUnit
GET /api/games
GET /api/games/{id}
POST /api/games
PUT /api/games/{id}
DELETE /api/games/{id}
GET /api/games?title=zelda
GET /api/games?status=InProgress
GET /api/games?platform=Windows
Titleis required with length limited to 30Ratingmust be between0and10
- .NET 10 SDK
dotnet restore
dotnet ef database update --project GameLibraryApi
dotnet run --project GameLibraryApiSet ApiBaseUrl in GameLibraryFrontend/appsettings.json or GameLibraryFrontend/appsettings.Development.json, then run:
dotnet run --project GameLibraryFrontenddotnet test GameLibraryApi.sln- Frontend error handling is still minimal and needs more user feedback for failed API requests.
