Files
SlipItIn/openwiki/source-map.md
Tim Krampitz 01046b01e4 Neue Skills, Referenzen & OpenWiki-Doku integriert
Umfangreiche Erweiterung der Skill-Bibliothek: Neue Skills für Humanisierung (Englisch/PT-BR), Design-Validierung, AI-SEO und Coolify-Deployment inkl. Regelwerke, Presets, Pattern-Referenzen, Testfälle und Automatisierungsskripte. Zusätzliche Skills für Revenue-Centric Design, Pier Cloud, OKF, Lebenslauf- und LinkedIn-Optimierung sowie zahlreiche Referenzdateien, Checklisten und YAML/JSON/Markdown-Templates. Einführung einer vollständigen OpenWiki-Dokumentation mit Architektur-, Domain- und Workflow-Beschreibungen, zentralem Index und automatisierten Updates. Modularer Aufbau, restriktive Lizenzen und umfassende Qualitäts- und Evaluationsmechanismen für alle neuen Inhalte.
2026-07-26 14:00:58 +02:00

5.3 KiB

type, title, description, tags
type title description tags
Reference Source Code Map & Navigation Directory Practical navigation guide mapping source files across projects to system domains and responsibilities.
source-map
navigation
directory
projects

Source Code Map & Navigation Directory

This directory maps every major project, folder, and source file in the SlipItIn repository to its system domain and technical responsibility.

This navigation map indexes backend architecture files described in the system architecture, indexes domain model files defined in the domain mechanics guide, indexes workflow implementation files detailed in the workflow guide, and indexes operational configuration files documented in the operations runbook.


1. Solution Projects (SlipItIn.slnx)

SlipItIn.slnx
├── SlipItIn.AppHost/          # Aspire distributed orchestrator
├── SlipItIn.Server/           # Web API & SignalR real-time server
├── SlipItIn.Shared/           # Shared models & data transfer objects
├── SlipItIn.ServiceDefaults/  # Aspire OpenTelemetry & health checks
├── SlipItIn/                  # .NET MAUI multi-platform client
└── Agents/                    # Architecture & planning briefs

2. Directory & Source File Map

.NET Aspire Orchestration (SlipItIn.AppHost)

  • AppHost.cs: Orchestrates application dependencies. Configures PostgreSQL (AddPostgres("pgsql")), references SlipItIn.Server, and links the MAUI client.
  • appsettings.json: Aspire orchestrator configuration.

Service Defaults & Telemetry (SlipItIn.ServiceDefaults)

  • Extensions.cs: Implements AddServiceDefaults() and ConfigureOpenTelemetry(). Configures OpenTelemetry logging, metrics, tracing filters (excluding /health and /alive), service discovery, and HTTP resilience handlers.

Backend Web API & SignalR Server (SlipItIn.Server)

  • Program.cs: Entrypoint for ASP.NET Core server. Registers EF Core IDbContextFactory, JWT authentication middleware, SignalR query parameter token parsing, Npgsql PostgreSQL data source, OpenAPI, CORS policies, and automatic EF migrations.
  • Controllers/AuthController.cs: REST API controller providing /api/auth/register, /api/auth/login, and /api/auth/me. Handles BCrypt password hashing and JWT token generation.
  • Hubs/GameHub.cs: SignalR hub mapped to /hubs/game. Performs JWT claim extraction (GetAuthenticatedUserId), player/host authorization checks (ValidatePlayerAccessAsync, ValidateHostAccessAsync), connection ID tracking, and real-time event broadcasting.
  • Services/IGameService.cs: Contract interface defining backend game operations.
  • Services/GameService.cs: Core engine implementation. Handles game creation, player joining, card dealing from active phrases, slip submission, challenge creation, penalty resolution, and state serialization (GetGameStateAsync, GetPlayerHandAsync).
  • Data/SlipItInDbContext.cs: Entity Framework Core DbContext mapping Users, Games, Players, Phrases, PlayerCards, GameRounds, and SlipChallenges to PostgreSQL tables.
  • Migrations/: Auto-generated EF Core migration snapshots (20260723193505_InitialCreate.cs).
  • appsettings.json & appsettings.Development.json: JWT secret keys, issuer/audience defaults, and database connection strings.

Shared Domain & DTOs (SlipItIn.Shared)

  • Models/User.cs: Entity storing user credentials, BCrypt password hashes, and user state.
  • Models/Game.cs: Entity storing lobby codes, status (GameStatus), host ID, and duration parameters.
  • Models/Player.cs: Entity tracking player scores, ready status, and SignalR connection IDs.
  • Models/Phrase.cs: Entity storing phrase text and creator metadata.
  • Models/GameRound.cs: Entity tracking round numbers and status (RoundStatus).
  • Models/PlayerCard.cs: Entity linking phrases to players for specific rounds (IsUsed flag).
  • Models/SlipChallenge.cs: Entity recording accusations, challenging/target player IDs, and challenge status (ChallengeStatus).
  • DTOs/AuthDtos.cs: DTOs for authentication (RegisterRequestDto, LoginRequestDto, AuthResponseDto).
  • DTOs/GameStateDto.cs: DTOs for public state (GameStateDto, PlayerInfoDto), private hand state (PlayerHandDto, PlayerCardDto), and challenge alerts (SlipChallengeDto).

Cross-Platform MAUI Client (SlipItIn)

  • MauiProgram.cs: Client builder configuring MAUI app shell, fonts, and logging debug extensions.
  • App.xaml & App.xaml.cs: Root MAUI application class.
  • AppShell.xaml & AppShell.xaml.cs: AppShell routing container.
  • MainPage.xaml & MainPage.xaml.cs: Initial entry view.
  • Platforms/: Platform-specific entry points for Android, iOS, MacCatalyst, and Windows.

Documentation & Specifications (Agents/)

  • Agents/Architecture.md: Specification document defining Phase 2b backend security (JWT validation, IDbContextFactory, privacy DTOs) and Phase 3b MAUI stability patterns (WeakReferenceMessenger, auto-reconnect, dual-layer storage).
  • Agents/ProjectPlan.md: Project plan breakdown covering phases 1 through 4.