{"repo":"hyunbin7303/HBlog","free":true,"listed":false,"github":"https://github.com/hyunbin7303/HBlog","clone":"git clone https://github.com/hyunbin7303/HBlog.git","description":"Blog Post website implementation using Blazor WASM and ASP.NET Web Api","language":"C#","stars":23,"topics":["asp-net-core","blogging","bootstrap5","single-page-applications","jwt-authentication","css","blazor-webassembly","dotnet","blazor","webapi"],"license":null,"category":"auth-billing-email","readme_excerpt":"HBlog This project is for building my own blog using ASP.NET Web API and Blazor WebAssembly. Technology Stacks ASP.NET Web API on .NET 10 EF Core Blazor WebAssembly Bootstrap PostgreSQL .NET Aspire ( HBlog.AppHost ) for local orchestration Technology implementations Frontend (Blazor WASM) Side HTTP Client service layer to interact with Web API. Authentication using JWT Token. Authorization Backend (ASP.NET Web API) Side SOLID Principle A RESTful API design Service layer for business logic Repository Pattern for persisting data CQRS (see CQRS IMPLEMENTATION.md) Authentication via JWT with refresh tokens External sign-in via OAuth (Google, Apple) with a short-lived ticket flow for first-time profile completion Pagination for handling large data Infrastructure layer (Extensions, Helpers, Data migrations/seed) AutoMapper for Domain–DTO mapping Global exception handling via GlobalExceptionHandler + RFC 7807 ProblemDetails Request correlation via CorrelationMiddleware OpenAPI documentation via both Swagger UI and Scalar Unit tests and Integration tests Getting started 1. Clone the git repository. 2. Turn on Docker Desktop. 3. From the src/ folder, start the Postgres and Web API containers: docker compose up -d . 4. Open the API docs: Swagger UI: http://localhost:8090/swagger/index.html Scalar: http://localhost:8090/scalar/v1 5. Get an authentication token by calling the /account/login endpoint with your seeded test user credentials. 6. In Visual Studio, change the startup project t","default_branch":null,"files":null,"tree":[],"storefront":"/r/hyunbin7303","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/hyunbin7303/HBlog/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}