Skip to content

punkouter26/PoPunkouterSoftware

Repository files navigation

PoPunkouterSoftware

PoPunkouterSoftware is a .NET 10 Blazor Web App with a server host, a WebAssembly client, and operational endpoints for Azure, diagnostics, GitHub activity, and infrastructure scanning.

Solution Layout

  • PoPunkouterSoftware/: ASP.NET Core host, API endpoints, diagnostics, and Blazor shell.
  • PoPunkouterSoftware.Client/: WASM UI, layouts, pages, and static assets.
  • PoPunkouterSoftware.Shared/: contracts and models shared between the host and client.
  • PoPunkouterSoftware.Infrastructure/: Azure and integration adapters.
  • tests/PoPunkouterSoftware.Tests.Unit/: xUnit unit tests.
  • tests/PoPunkouterSoftware.Tests.Integration/: integration tests with WebApplicationFactory and Azurite.
  • tests/PoPunkouterSoftware.Tests.E2E/: Playwright end-to-end tests.
  • SCRIPTS/: setup and automation helpers.

Local Development

Prerequisites:

  • .NET SDK from global.json
  • Node.js for Playwright tests
  • Docker Desktop for Azurite-backed integration scenarios

Common commands:

dotnet build .\PoPunkouterSoftware\PoPunkouterSoftware.csproj
dotnet test .\tests\PoPunkouterSoftware.Tests.Unit
dotnet test .\tests\PoPunkouterSoftware.Tests.Integration

Available VS Code tasks in this workspace include:

  • build
  • test-unit
  • start-azurite
  • start-api-server

The app runs locally on HTTP 5000 and HTTPS 5001.

Runtime Notes

  • /health and /api/health provide machine-readable health output.
  • /diag and related /api/diag/* endpoints expose diagnostics details with masked secrets.
  • Azure behavior prefers Key Vault and managed identity when available, with local fallback configuration for development.
  • The client dashboard consumes the shared Azure report models generated by the server and infrastructure layers.

Testing Strategy

  • Unit tests cover pure logic and API helpers.
  • Integration tests cover host configuration, diagnostics endpoints, and Azure Table Storage behavior.
  • E2E tests cover browser flows and static asset availability.

Developer Guidance

  • Read architecture.md and AGENT.MD before broad changes.
  • Keep diagnostics endpoints available but do not link them from the UI.
  • Preserve Po-prefixed naming and strict build quality defaults from Directory.Build.props.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors