From 6f89e5c0c6147746966e42f3f5f8e5aa4074d8b8 Mon Sep 17 00:00:00 2001 From: Aaron Po Date: Mon, 31 Aug 2026 21:44:22 -0400 Subject: [PATCH] restruc --- .github/workflows/deploy-docs.yml | 2 +- README.md | 36 ++++------- docs/index.md | 4 +- docs/pipeline/README.md | 4 +- docs/pipeline/diagrams/current/activity.md | 2 +- .../diagrams}/current/activity.mmd | 0 docs/pipeline/diagrams/current/class.md | 2 +- .../diagrams}/current/class.mmd | 0 docs/pipeline/diagrams/planned/activity.md | 2 +- .../diagrams}/planned/activity.mmd | 0 docs/pipeline/diagrams/planned/class.md | 2 +- .../diagrams}/planned/class.mmd | 0 docs/{ => web}/architecture.md | 44 ++++++------- docs/{website => web}/database.md | 4 +- .../diagrams/auth/confirm-user.md | 2 +- .../diagrams}/auth/confirm-user.mmd | 0 .../diagrams/auth/delete-account.md | 2 +- .../diagrams}/auth/delete-account.mmd | 0 .../diagrams/auth/error-handling.md | 2 +- .../diagrams}/auth/error-handling.mmd | 0 docs/{website => web}/diagrams/auth/login.md | 2 +- .../website => web/diagrams}/auth/login.mmd | 0 .../diagrams/auth/refresh-token.md | 2 +- .../diagrams}/auth/refresh-token.mmd | 0 .../diagrams/auth/registration.md | 2 +- .../diagrams}/auth/registration.mmd | 0 .../diagrams/auth/resend-confirmation.md | 2 +- .../diagrams}/auth/resend-confirmation.mmd | 0 .../diagrams/auth/update-email.md | 2 +- .../diagrams}/auth/update-email.mmd | 0 .../diagrams/auth/update-password.md | 2 +- .../diagrams}/auth/update-password.mmd | 0 .../diagrams/auth/update-profile.md | 2 +- .../diagrams}/auth/update-profile.mmd | 0 .../diagrams/auth/update-username.md | 2 +- .../diagrams}/auth/update-username.mmd | 0 .../diagrams/database-schema.md | 2 +- .../diagrams}/database-schema.mmd | 0 docs/{website => web}/diagrams/deployment.md | 2 +- .../website => web/diagrams}/deployment.mmd | 0 .../diagrams/vertical-slice.md} | 4 +- .../diagrams/vertical-slice}/host-wiring.mmd | 0 .../vertical-slice}/project-references.mmd | 0 docs/{website => web}/docker.md | 2 +- .../{website => web}/environment-variables.md | 0 docs/{website => web}/getting-started.md | 2 +- docs/{website => web}/testing.md | 0 docs/{website => web}/token-validation.md | 0 mkdocs.yml | 64 ++++++++++--------- 49 files changed, 98 insertions(+), 102 deletions(-) rename docs/{diagrams/pipeline => pipeline/diagrams}/current/activity.mmd (100%) rename docs/{diagrams/pipeline => pipeline/diagrams}/current/class.mmd (100%) rename docs/{diagrams/pipeline => pipeline/diagrams}/planned/activity.mmd (100%) rename docs/{diagrams/pipeline => pipeline/diagrams}/planned/class.mmd (100%) rename docs/{ => web}/architecture.md (95%) rename docs/{website => web}/database.md (98%) rename docs/{website => web}/diagrams/auth/confirm-user.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/confirm-user.mmd (100%) rename docs/{website => web}/diagrams/auth/delete-account.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/delete-account.mmd (100%) rename docs/{website => web}/diagrams/auth/error-handling.md (88%) rename docs/{diagrams/website => web/diagrams}/auth/error-handling.mmd (100%) rename docs/{website => web}/diagrams/auth/login.md (56%) rename docs/{diagrams/website => web/diagrams}/auth/login.mmd (100%) rename docs/{website => web}/diagrams/auth/refresh-token.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/refresh-token.mmd (100%) rename docs/{website => web}/diagrams/auth/registration.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/registration.mmd (100%) rename docs/{website => web}/diagrams/auth/resend-confirmation.md (57%) rename docs/{diagrams/website => web/diagrams}/auth/resend-confirmation.mmd (100%) rename docs/{website => web}/diagrams/auth/update-email.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/update-email.mmd (100%) rename docs/{website => web}/diagrams/auth/update-password.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/update-password.mmd (100%) rename docs/{website => web}/diagrams/auth/update-profile.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/update-profile.mmd (100%) rename docs/{website => web}/diagrams/auth/update-username.md (55%) rename docs/{diagrams/website => web/diagrams}/auth/update-username.mmd (100%) rename docs/{website => web}/diagrams/database-schema.md (81%) rename docs/{diagrams/website => web/diagrams}/database-schema.mmd (100%) rename docs/{website => web}/diagrams/deployment.md (97%) rename docs/{diagrams/website => web/diagrams}/deployment.mmd (100%) rename docs/{website/diagrams/architecture.md => web/diagrams/vertical-slice.md} (97%) rename docs/{diagrams/website/architecture => web/diagrams/vertical-slice}/host-wiring.mmd (100%) rename docs/{diagrams/website/architecture => web/diagrams/vertical-slice}/project-references.mmd (100%) rename docs/{website => web}/docker.md (99%) rename docs/{website => web}/environment-variables.md (100%) rename docs/{website => web}/getting-started.md (98%) rename docs/{website => web}/testing.md (100%) rename docs/{website => web}/token-validation.md (100%) diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 2ab8b0a2..2a58a999 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -37,7 +37,7 @@ jobs: cache: "pip" - name: Install dependencies - run: pip install mkdocs mkdocs-material mkdocs-glightbox mkdocs-panzoom-plugin + run: pip install mkdocs mkdocs-material mkdocs-glightbox mkdocs-panzoom-plugin mkdocs-minify-plugin - name: Build site run: mkdocs build diff --git a/README.md b/README.md index 17222621..ce83a51a 100644 --- a/README.md +++ b/README.md @@ -22,26 +22,19 @@ pipeline notes) lives under `docs/`. Website + backend (active stack): -- [Getting Started](docs/website/getting-started.md) -- [Architecture](docs/architecture.md) -- [Database](docs/website/database.md) -- [Docker Guide](docs/website/docker.md) -- [Testing](docs/website/testing.md) -- [Environment Variables](docs/website/environment-variables.md) -- [Token Validation](docs/website/token-validation.md) +- [Getting Started](docs/web/getting-started.md) +- [Architecture](docs/web/architecture.md) +- [Database](docs/web/database.md) +- [Docker Guide](docs/web/docker.md) +- [Testing](docs/web/testing.md) +- [Environment Variables](docs/web/environment-variables.md) +- [Token Validation](docs/web/token-validation.md) Data generation pipeline (C++): - [Pipeline README](docs/pipeline/README.md) - [Ethics & Known Issues](docs/pipeline/ETHICS-AND-KNOWN-ISSUES.md) -## Diagrams - -- [Architecture](docs/website/diagrams-out/architecture.svg) -- [Deployment](docs/website/diagrams-out/deployment.svg) -- [Authentication Flow](docs/website/diagrams-out/authentication-flow.svg) -- [Database Schema](docs/website/diagrams-out/database-schema.svg) - ## Current status Active areas in the repository: @@ -76,12 +69,12 @@ Archived/reference areas: - Node.js 18 or later - Docker Desktop, or an equivalent Docker Engine setup -See [Getting Started](docs/website/getting-started.md) for the full +See [Getting Started](docs/web/getting-started.md) for the full prerequisite list, including the pipeline's C++ toolchain. ## Quick start -For full setup details, use [Getting Started](docs/website/getting-started.md). +For full setup details, use [Getting Started](docs/web/getting-started.md). This section is the shortest path to a working dev environment. ### Full stack (Docker) @@ -131,9 +124,8 @@ tooling/ pipeline/ C++20 seed-data generation CLI (CMake) docs/ - architecture.md High-level architecture overview - website/ Backend/frontend setup, docker, testing, diagrams - pipeline/ Pipeline docs, ethics notes, PlantUML diagrams + web/ Architecture, setup, docker, testing, diagrams + pipeline/ Pipeline docs, ethics notes, diagrams archive/ next-js-web-app/ Older Next.js frontend (reference only) @@ -151,7 +143,7 @@ docker compose --env-file web/.env.test -f web/docker-compose.test.yaml up --abo The same command runs in CI via [`.github/workflows/tests.yml`](.github/workflows/tests.yml) on every push -and pull request to `main`. See [Testing](docs/website/testing.md) for the +and pull request to `main`. See [Testing](docs/web/testing.md) for the full command list. ## Configuration @@ -163,14 +155,14 @@ Common active variables: `WEBSITE_BASE_URL` - Frontend runtime: `API_BASE_URL`, `SESSION_SECRET`, `NODE_ENV` -See [Environment Variables](docs/website/environment-variables.md) for details. +See [Environment Variables](docs/web/environment-variables.md) for details. ## Contributing 1. Fork the repository 2. Create a feature branch (`git checkout -b feature/amazing-feature`) 3. Commit your changes (`git commit -m 'Add amazing feature'`) -4. Run the checks in [Testing](docs/website/testing.md) (backend tests, +4. Run the checks in [Testing](docs/web/testing.md) (backend tests, `npm run lint`, `npm run typecheck`) 5. Push to the branch (`git push origin feature/amazing-feature`) 6. Open a Pull Request diff --git a/docs/index.md b/docs/index.md index 610028f0..6d4c9219 100644 --- a/docs/index.md +++ b/docs/index.md @@ -10,6 +10,6 @@ Welcome to the documentation for The Biergarten App. ## Documentation Sections -- **[Architecture](architecture.md)** — System design and components -- **[Website](website/getting-started.md)** — Backend and frontend documentation +- **[Architecture](web/architecture.md)** — System design and components +- **[Website](web/getting-started.md)** — Backend and frontend documentation - **[Pipeline](pipeline/README.md)** — Data pipeline and ETL processes diff --git a/docs/pipeline/README.md b/docs/pipeline/README.md index e223be91..a8ce4af9 100644 --- a/docs/pipeline/README.md +++ b/docs/pipeline/README.md @@ -302,11 +302,11 @@ see ETHICS-AND-KNOWN-ISSUES.md's Names-by-Country Dataset section. ### Process flow - activity diagram -![An activity diagram](./diagrams/current/output/activity.svg) +See [Activity diagram](./diagrams/current/activity.md). ### Architectural overview - class diagram -![A class diagram](./diagrams/current/output/class.svg) +See [Class diagram](./diagrams/current/class.md). --- diff --git a/docs/pipeline/diagrams/current/activity.md b/docs/pipeline/diagrams/current/activity.md index 331c06d6..2a158cb2 100644 --- a/docs/pipeline/diagrams/current/activity.md +++ b/docs/pipeline/diagrams/current/activity.md @@ -3,5 +3,5 @@ The only concurrency in the current pipeline is a dedicated log dispatcher thread that drains `log_channel` and forwards entries to spdlog for the entire run (joined during shutdown after `log_channel` closes). `BiergartenPipelineOrchestrator::Run()` itself is synchronous — sampling, enrichment, generation, and export all happen on the main thread. ```mermaid ---8<-- "diagrams/pipeline/current/activity.mmd" +--8<-- "pipeline/diagrams/current/activity.mmd" ``` diff --git a/docs/diagrams/pipeline/current/activity.mmd b/docs/pipeline/diagrams/current/activity.mmd similarity index 100% rename from docs/diagrams/pipeline/current/activity.mmd rename to docs/pipeline/diagrams/current/activity.mmd diff --git a/docs/pipeline/diagrams/current/class.md b/docs/pipeline/diagrams/current/class.md index 6f1e68a2..aa3251f2 100644 --- a/docs/pipeline/diagrams/current/class.md +++ b/docs/pipeline/diagrams/current/class.md @@ -1,5 +1,5 @@ # The Biergarten Data Pipeline — Class Diagram (Current) ```mermaid ---8<-- "diagrams/pipeline/current/class.mmd" +--8<-- "pipeline/diagrams/current/class.mmd" ``` diff --git a/docs/diagrams/pipeline/current/class.mmd b/docs/pipeline/diagrams/current/class.mmd similarity index 100% rename from docs/diagrams/pipeline/current/class.mmd rename to docs/pipeline/diagrams/current/class.mmd diff --git a/docs/pipeline/diagrams/planned/activity.md b/docs/pipeline/diagrams/planned/activity.md index cbeb22ca..28c02068 100644 --- a/docs/pipeline/diagrams/planned/activity.md +++ b/docs/pipeline/diagrams/planned/activity.md @@ -3,5 +3,5 @@ Each generation phase runs a producer/consumer trio concurrently: an **Orchestrator** producer feeds a bounded channel, an **LLM Worker** consumes it and generates records (closing its output channel when the input is drained and closed), and a **SQLite Worker** consumes that output channel and commits in batches. The Checkin and Follow phases run in parallel with each other once the user and brewery pools are populated. ```mermaid ---8<-- "diagrams/pipeline/planned/activity.mmd" +--8<-- "pipeline/diagrams/planned/activity.mmd" ``` diff --git a/docs/diagrams/pipeline/planned/activity.mmd b/docs/pipeline/diagrams/planned/activity.mmd similarity index 100% rename from docs/diagrams/pipeline/planned/activity.mmd rename to docs/pipeline/diagrams/planned/activity.mmd diff --git a/docs/pipeline/diagrams/planned/class.md b/docs/pipeline/diagrams/planned/class.md index 837e1c91..6217bcc1 100644 --- a/docs/pipeline/diagrams/planned/class.md +++ b/docs/pipeline/diagrams/planned/class.md @@ -1,7 +1,7 @@ # Biergarten Data Pipeline — Class Diagram (Planned) ```mermaid ---8<-- "diagrams/pipeline/planned/class.mmd" +--8<-- "pipeline/diagrams/planned/class.mmd" ``` ## Notes diff --git a/docs/diagrams/pipeline/planned/class.mmd b/docs/pipeline/diagrams/planned/class.mmd similarity index 100% rename from docs/diagrams/pipeline/planned/class.mmd rename to docs/pipeline/diagrams/planned/class.mmd diff --git a/docs/architecture.md b/docs/web/architecture.md similarity index 95% rename from docs/architecture.md rename to docs/web/architecture.md index 659bb04b..c43dcab6 100644 --- a/docs/architecture.md +++ b/docs/web/architecture.md @@ -19,27 +19,25 @@ reference. For visual representations, see: -- [architecture.svg](website/diagrams-out/architecture.svg) - Vertical-slice - architecture diagram -- [deployment.svg](website/diagrams-out/deployment.svg) - Docker deployment - diagram -- [database-schema.svg](website/diagrams-out/database-schema.svg) - Database - relationships +- [Vertical Slice](diagrams/vertical-slice.md) - host wiring and project + reference diagrams +- [Deployment](diagrams/deployment.md) - Docker deployment diagram +- [Database Schema](diagrams/database-schema.md) - database relationships Authentication workflow diagrams, one per flow, under -`website/diagrams-out/auth/`: +[`diagrams/auth/`](diagrams/auth/): -- [registration.svg](website/diagrams-out/auth/registration.svg) -- [login.svg](website/diagrams-out/auth/login.svg) -- [refresh-token.svg](website/diagrams-out/auth/refresh-token.svg) -- [confirm-user.svg](website/diagrams-out/auth/confirm-user.svg) -- [resend-confirmation.svg](website/diagrams-out/auth/resend-confirmation.svg) -- [update-username.svg](website/diagrams-out/auth/update-username.svg) -- [update-email.svg](website/diagrams-out/auth/update-email.svg) -- [update-password.svg](website/diagrams-out/auth/update-password.svg) -- [update-profile.svg](website/diagrams-out/auth/update-profile.svg) -- [delete-account.svg](website/diagrams-out/auth/delete-account.svg) -- [error-handling.svg](website/diagrams-out/auth/error-handling.svg) - shared +- [Registration](diagrams/auth/registration.md) +- [Login](diagrams/auth/login.md) +- [Refresh Token](diagrams/auth/refresh-token.md) +- [Confirm User](diagrams/auth/confirm-user.md) +- [Resend Confirmation](diagrams/auth/resend-confirmation.md) +- [Update Username](diagrams/auth/update-username.md) +- [Update Email](diagrams/auth/update-email.md) +- [Update Password](diagrams/auth/update-password.md) +- [Update Profile](diagrams/auth/update-profile.md) +- [Delete Account](diagrams/auth/delete-account.md) +- [Error Handling](diagrams/auth/error-handling.md) - shared `GlobalExceptionFilter` mapping used by all flows above ## Backend architecture @@ -370,7 +368,7 @@ method that registers its repository and slice-internal services - Application focuses on orchestration; the database enforces integrity via keys, `CHECK` constraints, and cascades -See [Database](website/database.md) for the schema and the app's SQL +See [Database](database.md) for the schema and the app's SQL error-handling approach in more detail. ## Frontend architecture @@ -504,7 +502,7 @@ reference. Product and engineering documentation points to `web/frontend`. ## Database architecture For the table-by-table schema and the custom SQL error code scheme, see -[Database](website/database.md). +[Database](database.md). ### SQL-first philosophy @@ -555,7 +553,7 @@ tracking stays valid. **Purpose**: Populate development/test databases with realistic data **Implementation**: `Database.Seed` project, using data produced by the C++ -pipeline under `tooling/pipeline/` (see [Pipeline README](pipeline/README.md)) +pipeline under `tooling/pipeline/` (see [Pipeline README](../pipeline/README.md)) **Seed Data**: @@ -590,7 +588,7 @@ Tables that exist in the schema but have no repository yet (`UserAvatar`, - Testing (`docker-compose.test.yaml`) - Production (`docker-compose.prod.yaml`) -For details, see [Docker Guide](website/docker.md). +For details, see [Docker Guide](docker.md). ### Health checks @@ -626,4 +624,4 @@ flowchart TB - Mock external dependencies - Test database for integration tests -For details, see [Testing Guide](website/testing.md). +For details, see [Testing Guide](testing.md). diff --git a/docs/website/database.md b/docs/web/database.md similarity index 98% rename from docs/website/database.md rename to docs/web/database.md index 55d71076..7217fcf4 100644 --- a/docs/website/database.md +++ b/docs/web/database.md @@ -11,7 +11,7 @@ tags: SQL Server 2022 schema, migration approach, and the app's SQL error-handling convention. For the vertical-slice code that talks to this schema, see -[Architecture](../architecture.md). +[Architecture](architecture.md). ## Schema @@ -42,7 +42,7 @@ script per table. Each script is run in order by `Database.Migrations` (DbUp) on startup. Each table is queried directly by the owning feature slice's repository (see -[Direct SQL via Dapper/ADO.NET](../architecture.md#direct-sql-via-dapperadonet)). +[Direct SQL via Dapper/ADO.NET](architecture.md#direct-sql-via-dapperadonet)). A generated DBML copy of the schema (for import into a diagramming tool such as dbdiagram.io) lives at `web/backend/Database/Database.Migrations/schema.dbml`. diff --git a/docs/website/diagrams/auth/confirm-user.md b/docs/web/diagrams/auth/confirm-user.md similarity index 55% rename from docs/website/diagrams/auth/confirm-user.md rename to docs/web/diagrams/auth/confirm-user.md index 827995e5..ee5402c0 100644 --- a/docs/website/diagrams/auth/confirm-user.md +++ b/docs/web/diagrams/auth/confirm-user.md @@ -1,5 +1,5 @@ # User Authentication Flow — Confirm User ```mermaid ---8<-- "diagrams/website/auth/confirm-user.mmd" +--8<-- "web/diagrams/auth/confirm-user.mmd" ``` diff --git a/docs/diagrams/website/auth/confirm-user.mmd b/docs/web/diagrams/auth/confirm-user.mmd similarity index 100% rename from docs/diagrams/website/auth/confirm-user.mmd rename to docs/web/diagrams/auth/confirm-user.mmd diff --git a/docs/website/diagrams/auth/delete-account.md b/docs/web/diagrams/auth/delete-account.md similarity index 55% rename from docs/website/diagrams/auth/delete-account.md rename to docs/web/diagrams/auth/delete-account.md index 2ac44f0b..aa4b91e3 100644 --- a/docs/website/diagrams/auth/delete-account.md +++ b/docs/web/diagrams/auth/delete-account.md @@ -1,5 +1,5 @@ # User Authentication Flow — Delete Account ```mermaid ---8<-- "diagrams/website/auth/delete-account.mmd" +--8<-- "web/diagrams/auth/delete-account.mmd" ``` diff --git a/docs/diagrams/website/auth/delete-account.mmd b/docs/web/diagrams/auth/delete-account.mmd similarity index 100% rename from docs/diagrams/website/auth/delete-account.mmd rename to docs/web/diagrams/auth/delete-account.mmd diff --git a/docs/website/diagrams/auth/error-handling.md b/docs/web/diagrams/auth/error-handling.md similarity index 88% rename from docs/website/diagrams/auth/error-handling.md rename to docs/web/diagrams/auth/error-handling.md index 0baf659f..bf8b9909 100644 --- a/docs/website/diagrams/auth/error-handling.md +++ b/docs/web/diagrams/auth/error-handling.md @@ -3,5 +3,5 @@ Global exception mapping performed by `API.Core`'s `GlobalExceptionFilter`. Applies uniformly across every authentication endpoint (registration, login, refresh, confirm, resend, update-username/email/password/profile, delete-account) — see the per-flow diagrams for where each exception type is thrown. ```mermaid ---8<-- "diagrams/website/auth/error-handling.mmd" +--8<-- "web/diagrams/auth/error-handling.mmd" ``` diff --git a/docs/diagrams/website/auth/error-handling.mmd b/docs/web/diagrams/auth/error-handling.mmd similarity index 100% rename from docs/diagrams/website/auth/error-handling.mmd rename to docs/web/diagrams/auth/error-handling.mmd diff --git a/docs/website/diagrams/auth/login.md b/docs/web/diagrams/auth/login.md similarity index 56% rename from docs/website/diagrams/auth/login.md rename to docs/web/diagrams/auth/login.md index da366c53..07ac61c3 100644 --- a/docs/website/diagrams/auth/login.md +++ b/docs/web/diagrams/auth/login.md @@ -1,5 +1,5 @@ # User Authentication Flow — Login ```mermaid ---8<-- "diagrams/website/auth/login.mmd" +--8<-- "web/diagrams/auth/login.mmd" ``` diff --git a/docs/diagrams/website/auth/login.mmd b/docs/web/diagrams/auth/login.mmd similarity index 100% rename from docs/diagrams/website/auth/login.mmd rename to docs/web/diagrams/auth/login.mmd diff --git a/docs/website/diagrams/auth/refresh-token.md b/docs/web/diagrams/auth/refresh-token.md similarity index 55% rename from docs/website/diagrams/auth/refresh-token.md rename to docs/web/diagrams/auth/refresh-token.md index 2103f635..5a06743d 100644 --- a/docs/website/diagrams/auth/refresh-token.md +++ b/docs/web/diagrams/auth/refresh-token.md @@ -1,5 +1,5 @@ # User Authentication Flow — Refresh Token ```mermaid ---8<-- "diagrams/website/auth/refresh-token.mmd" +--8<-- "web/diagrams/auth/refresh-token.mmd" ``` diff --git a/docs/diagrams/website/auth/refresh-token.mmd b/docs/web/diagrams/auth/refresh-token.mmd similarity index 100% rename from docs/diagrams/website/auth/refresh-token.mmd rename to docs/web/diagrams/auth/refresh-token.mmd diff --git a/docs/website/diagrams/auth/registration.md b/docs/web/diagrams/auth/registration.md similarity index 55% rename from docs/website/diagrams/auth/registration.md rename to docs/web/diagrams/auth/registration.md index 5acde69e..cc2c1ac9 100644 --- a/docs/website/diagrams/auth/registration.md +++ b/docs/web/diagrams/auth/registration.md @@ -1,5 +1,5 @@ # User Authentication Flow — Registration ```mermaid ---8<-- "diagrams/website/auth/registration.mmd" +--8<-- "web/diagrams/auth/registration.mmd" ``` diff --git a/docs/diagrams/website/auth/registration.mmd b/docs/web/diagrams/auth/registration.mmd similarity index 100% rename from docs/diagrams/website/auth/registration.mmd rename to docs/web/diagrams/auth/registration.mmd diff --git a/docs/website/diagrams/auth/resend-confirmation.md b/docs/web/diagrams/auth/resend-confirmation.md similarity index 57% rename from docs/website/diagrams/auth/resend-confirmation.md rename to docs/web/diagrams/auth/resend-confirmation.md index 26c77906..ccdcfd4f 100644 --- a/docs/website/diagrams/auth/resend-confirmation.md +++ b/docs/web/diagrams/auth/resend-confirmation.md @@ -1,5 +1,5 @@ # User Authentication Flow — Resend Confirmation Email ```mermaid ---8<-- "diagrams/website/auth/resend-confirmation.mmd" +--8<-- "web/diagrams/auth/resend-confirmation.mmd" ``` diff --git a/docs/diagrams/website/auth/resend-confirmation.mmd b/docs/web/diagrams/auth/resend-confirmation.mmd similarity index 100% rename from docs/diagrams/website/auth/resend-confirmation.mmd rename to docs/web/diagrams/auth/resend-confirmation.mmd diff --git a/docs/website/diagrams/auth/update-email.md b/docs/web/diagrams/auth/update-email.md similarity index 55% rename from docs/website/diagrams/auth/update-email.md rename to docs/web/diagrams/auth/update-email.md index 53b25b02..67b1a79e 100644 --- a/docs/website/diagrams/auth/update-email.md +++ b/docs/web/diagrams/auth/update-email.md @@ -1,5 +1,5 @@ # User Authentication Flow — Update Email ```mermaid ---8<-- "diagrams/website/auth/update-email.mmd" +--8<-- "web/diagrams/auth/update-email.mmd" ``` diff --git a/docs/diagrams/website/auth/update-email.mmd b/docs/web/diagrams/auth/update-email.mmd similarity index 100% rename from docs/diagrams/website/auth/update-email.mmd rename to docs/web/diagrams/auth/update-email.mmd diff --git a/docs/website/diagrams/auth/update-password.md b/docs/web/diagrams/auth/update-password.md similarity index 55% rename from docs/website/diagrams/auth/update-password.md rename to docs/web/diagrams/auth/update-password.md index a52c1751..9d538077 100644 --- a/docs/website/diagrams/auth/update-password.md +++ b/docs/web/diagrams/auth/update-password.md @@ -1,5 +1,5 @@ # User Authentication Flow — Update Password ```mermaid ---8<-- "diagrams/website/auth/update-password.mmd" +--8<-- "web/diagrams/auth/update-password.mmd" ``` diff --git a/docs/diagrams/website/auth/update-password.mmd b/docs/web/diagrams/auth/update-password.mmd similarity index 100% rename from docs/diagrams/website/auth/update-password.mmd rename to docs/web/diagrams/auth/update-password.mmd diff --git a/docs/website/diagrams/auth/update-profile.md b/docs/web/diagrams/auth/update-profile.md similarity index 55% rename from docs/website/diagrams/auth/update-profile.md rename to docs/web/diagrams/auth/update-profile.md index 001bd140..1e2bdd4b 100644 --- a/docs/website/diagrams/auth/update-profile.md +++ b/docs/web/diagrams/auth/update-profile.md @@ -1,5 +1,5 @@ # User Authentication Flow — Update Profile ```mermaid ---8<-- "diagrams/website/auth/update-profile.mmd" +--8<-- "web/diagrams/auth/update-profile.mmd" ``` diff --git a/docs/diagrams/website/auth/update-profile.mmd b/docs/web/diagrams/auth/update-profile.mmd similarity index 100% rename from docs/diagrams/website/auth/update-profile.mmd rename to docs/web/diagrams/auth/update-profile.mmd diff --git a/docs/website/diagrams/auth/update-username.md b/docs/web/diagrams/auth/update-username.md similarity index 55% rename from docs/website/diagrams/auth/update-username.md rename to docs/web/diagrams/auth/update-username.md index 245ea4dc..6c841334 100644 --- a/docs/website/diagrams/auth/update-username.md +++ b/docs/web/diagrams/auth/update-username.md @@ -1,5 +1,5 @@ # User Authentication Flow — Update Username ```mermaid ---8<-- "diagrams/website/auth/update-username.mmd" +--8<-- "web/diagrams/auth/update-username.mmd" ``` diff --git a/docs/diagrams/website/auth/update-username.mmd b/docs/web/diagrams/auth/update-username.mmd similarity index 100% rename from docs/diagrams/website/auth/update-username.mmd rename to docs/web/diagrams/auth/update-username.mmd diff --git a/docs/website/diagrams/database-schema.md b/docs/web/diagrams/database-schema.md similarity index 81% rename from docs/website/diagrams/database-schema.md rename to docs/web/diagrams/database-schema.md index 86697361..b9df13d6 100644 --- a/docs/website/diagrams/database-schema.md +++ b/docs/web/diagrams/database-schema.md @@ -3,5 +3,5 @@ Every table also has a `RowVersion ROWVERSION` column (optimistic concurrency), omitted below for brevity. Tables marked `(*)` have no repository/feature slice yet. ```mermaid ---8<-- "diagrams/website/database-schema.mmd" +--8<-- "web/diagrams/database-schema.mmd" ``` diff --git a/docs/diagrams/website/database-schema.mmd b/docs/web/diagrams/database-schema.mmd similarity index 100% rename from docs/diagrams/website/database-schema.mmd rename to docs/web/diagrams/database-schema.mmd diff --git a/docs/website/diagrams/deployment.md b/docs/web/diagrams/deployment.md similarity index 97% rename from docs/website/diagrams/deployment.md rename to docs/web/diagrams/deployment.md index 35802e1c..c4f678ff 100644 --- a/docs/website/diagrams/deployment.md +++ b/docs/web/diagrams/deployment.md @@ -1,7 +1,7 @@ # Docker Deployment Architecture ```mermaid ---8<-- "diagrams/website/deployment.mmd" +--8<-- "web/diagrams/deployment.mmd" ``` ## Notes diff --git a/docs/diagrams/website/deployment.mmd b/docs/web/diagrams/deployment.mmd similarity index 100% rename from docs/diagrams/website/deployment.mmd rename to docs/web/diagrams/deployment.mmd diff --git a/docs/website/diagrams/architecture.md b/docs/web/diagrams/vertical-slice.md similarity index 97% rename from docs/website/diagrams/architecture.md rename to docs/web/diagrams/vertical-slice.md index 64d1ab7c..0391d46e 100644 --- a/docs/website/diagrams/architecture.md +++ b/docs/web/diagrams/vertical-slice.md @@ -11,7 +11,7 @@ assemblies to register — there's no shared bootstrap. `Database.Migrations` doesn't wire up any slice; it applies schema directly. ```mermaid ---8<-- "diagrams/website/architecture/host-wiring.mmd" +--8<-- "web/diagrams/vertical-slice/host-wiring.mmd" ``` ## Project reference dependencies @@ -25,7 +25,7 @@ foundation projects (`Shared.Contracts`, `Domain.Entities`, see the notes for what else each of those foundation projects pulls in. ```mermaid ---8<-- "diagrams/website/architecture/project-references.mmd" +--8<-- "web/diagrams/vertical-slice/project-references.mmd" ``` ## Notes diff --git a/docs/diagrams/website/architecture/host-wiring.mmd b/docs/web/diagrams/vertical-slice/host-wiring.mmd similarity index 100% rename from docs/diagrams/website/architecture/host-wiring.mmd rename to docs/web/diagrams/vertical-slice/host-wiring.mmd diff --git a/docs/diagrams/website/architecture/project-references.mmd b/docs/web/diagrams/vertical-slice/project-references.mmd similarity index 100% rename from docs/diagrams/website/architecture/project-references.mmd rename to docs/web/diagrams/vertical-slice/project-references.mmd diff --git a/docs/website/docker.md b/docs/web/docker.md similarity index 99% rename from docs/website/docker.md rename to docs/web/docker.md index 3340f641..8f4f8f9d 100644 --- a/docs/website/docker.md +++ b/docs/web/docker.md @@ -21,7 +21,7 @@ The project uses Docker Compose to orchestrate multiple services: - React Router website (SSR frontend) - Test runners -See the [deployment diagram](diagrams-out/deployment.svg) for visual +See the [deployment diagram](diagrams/deployment.md) for visual representation. ## Docker Compose environments diff --git a/docs/website/environment-variables.md b/docs/web/environment-variables.md similarity index 100% rename from docs/website/environment-variables.md rename to docs/web/environment-variables.md diff --git a/docs/website/getting-started.md b/docs/web/getting-started.md similarity index 98% rename from docs/website/getting-started.md rename to docs/web/getting-started.md index 721d5607..ad5027f3 100644 --- a/docs/website/getting-started.md +++ b/docs/web/getting-started.md @@ -159,6 +159,6 @@ reference; it is not part of the running stack. ## Next steps -- Review [Architecture](../architecture.md) +- Review [Architecture](architecture.md) - Run backend and frontend checks from [Testing](testing.md) - Use [Docker Guide](docker.md) for container troubleshooting diff --git a/docs/website/testing.md b/docs/web/testing.md similarity index 100% rename from docs/website/testing.md rename to docs/web/testing.md diff --git a/docs/website/token-validation.md b/docs/web/token-validation.md similarity index 100% rename from docs/website/token-validation.md rename to docs/web/token-validation.md diff --git a/mkdocs.yml b/mkdocs.yml index c36e3e91..1c3205c3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -7,48 +7,54 @@ theme: name: material nav: - Home: index.md - - Architecture: architecture.md - - Diagrams: - - Website: - - Architecture: website/diagrams/architecture.md - - Database Schema: website/diagrams/database-schema.md - - Deployment: website/diagrams/deployment.md + - Web: + - Architecture: web/architecture.md + - Getting Started: web/getting-started.md + - Database: web/database.md + - Docker: web/docker.md + - Environment Variables: web/environment-variables.md + - Testing: web/testing.md + - Token Validation: web/token-validation.md + - Diagrams: + - Vertical Slice: web/diagrams/vertical-slice.md + - Database Schema: web/diagrams/database-schema.md + - Deployment: web/diagrams/deployment.md - Auth Flows: - - Registration: website/diagrams/auth/registration.md - - Login: website/diagrams/auth/login.md - - Refresh Token: website/diagrams/auth/refresh-token.md - - Confirm User: website/diagrams/auth/confirm-user.md - - Resend Confirmation: website/diagrams/auth/resend-confirmation.md - - Update Username: website/diagrams/auth/update-username.md - - Update Email: website/diagrams/auth/update-email.md - - Update Password: website/diagrams/auth/update-password.md - - Update Profile: website/diagrams/auth/update-profile.md - - Delete Account: website/diagrams/auth/delete-account.md - - Error Handling: website/diagrams/auth/error-handling.md - - Pipeline: + - Registration: web/diagrams/auth/registration.md + - Login: web/diagrams/auth/login.md + - Refresh Token: web/diagrams/auth/refresh-token.md + - Confirm User: web/diagrams/auth/confirm-user.md + - Resend Confirmation: web/diagrams/auth/resend-confirmation.md + - Update Username: web/diagrams/auth/update-username.md + - Update Email: web/diagrams/auth/update-email.md + - Update Password: web/diagrams/auth/update-password.md + - Update Profile: web/diagrams/auth/update-profile.md + - Delete Account: web/diagrams/auth/delete-account.md + - Error Handling: web/diagrams/auth/error-handling.md + - Pipeline: + - Overview: pipeline/README.md + - Roadmap: pipeline/ROADMAP.md + - Ethics & Known Issues: pipeline/ETHICS-AND-KNOWN-ISSUES.md + - Diagrams: - Current: - Activity: pipeline/diagrams/current/activity.md - Class: pipeline/diagrams/current/class.md - Planned: - Activity: pipeline/diagrams/planned/activity.md - Class: pipeline/diagrams/planned/class.md - - Website: - - Getting Started: website/getting-started.md - - Database: website/database.md - - Docker: website/docker.md - - Environment Variables: website/environment-variables.md - - Testing: website/testing.md - - Token Validation: website/token-validation.md - - Pipeline: - - Overview: pipeline/README.md - - Roadmap: pipeline/ROADMAP.md - - Ethics & Known Issues: pipeline/ETHICS-AND-KNOWN-ISSUES.md plugins: - search - glightbox - panzoom: mermaid: true + - minify: + minify_html: true + minify_js: true + minify_css: true + htmlmin_opts: + remove_comments: true + cache_safe: true markdown_extensions: - pymdownx.superfences: