Scaffold full-stack solution and CI baseline

This commit is contained in:
2026-02-24 21:27:51 +01:00
parent f3e3178f2f
commit d9f0c7b7ac
27 changed files with 853 additions and 1 deletions

43
README.md Normal file
View File

@@ -0,0 +1,43 @@
# RpgRoller
Fresh full-stack starter scaffold:
- `RpgRoller/`: ASP.NET Core backend + static frontend (`wwwroot`)
- `RpgRoller.Tests/`: xUnit integration-heavy test project
- `RpgRoller.sln`: solution used by local CI script
## Prerequisites
- .NET SDK 10.0+
- Node.js 22+ and npm
- PowerShell 7+
## Local Development
1. Run the local CI parity script:
```powershell
pwsh ./scripts/ci-local.ps1
```
2. Start the backend:
```powershell
dotnet run --project RpgRoller/RpgRoller.csproj
```
3. Open `http://localhost:5000` (or the port shown in the console).
## Frontend Tooling
- OpenAPI contract: `openapi/RpgRoller.json`
- API client generation: `npm run generate:api-client`
- Frontend lint checks: `npm run lint`
- Frontend format checks: `npm run format:check`
## Test and Coverage
- Tests:
```powershell
dotnet test RpgRoller.Tests/RpgRoller.Tests.csproj --collect:"XPlat Code Coverage" --settings RpgRoller.Tests/coverlet.runsettings
```
- Coverage gate:
```powershell
pwsh ./scripts/check-coverage.ps1 -MinLineRate 0.90 -MinBranchRate 0.70
```