generated from bisco/codex-bootstrap
feat: build headless theatre laboratory website
This commit is contained in:
+17
-9
@@ -1,13 +1,21 @@
|
||||
# Architecture
|
||||
|
||||
Describe the project architecture here.
|
||||
The system has three runtime components on the Docker Compose default network:
|
||||
|
||||
Include:
|
||||
1. Astro renders the public single page and requests one aggregate JSON document.
|
||||
2. Wagtail/Django manages editorial content, serves media in development, and exposes
|
||||
the read-only `/api/site/home/` endpoint.
|
||||
3. PostgreSQL persists Wagtail content and metadata.
|
||||
|
||||
- main components;
|
||||
- runtime dependencies;
|
||||
- data flow;
|
||||
- persistence;
|
||||
- external integrations;
|
||||
- deployment topology;
|
||||
- relevant ADRs.
|
||||
The aggregate response contains `settings`, `homepage`, `feature_cards`, `teacher`,
|
||||
`lesson_info`, `shows`, and `gallery_items`. Image values contain browser-facing URLs
|
||||
and alternative text. Only published home content and records marked for home display
|
||||
are exposed. Astro validates/normalizes the response and falls back to checked-in
|
||||
Italian demo content if fetching fails.
|
||||
|
||||
Wagtail's authenticated admin remains the only editing interface. The public frontend
|
||||
has no database access and no public write API. Uploaded media is stored in a dedicated
|
||||
Compose volume.
|
||||
|
||||
The deployment topology and content model are recorded in
|
||||
[ADR-0001](adr/0001-headless-wagtail-astro.md).
|
||||
|
||||
Reference in New Issue
Block a user