This commit is contained in:
Marek
2026-04-19 19:22:36 +02:00
parent 18fc50c75b
commit 65157da61d
58 changed files with 222 additions and 7 deletions

5
doc/core/cache/features.md vendored Normal file
View File

@@ -0,0 +1,5 @@
- cache
- shared read-store / cache client (Redis today)
- backend writes, frontend reads
- apps keep the cache in sync via event handlers (projectors), not the core client
- room for growth: CacheProvider abstraction so the read-store becomes swappable

1
doc/core/cache/specs.md vendored Normal file
View File

@@ -0,0 +1 @@
- cache.py

View File

@@ -0,0 +1,2 @@
- config
- read .env into Settings object

1
doc/core/config/specs.md Normal file
View File

@@ -0,0 +1 @@
- config.py

4
doc/core/db/features.md Normal file
View File

@@ -0,0 +1,4 @@
- db
- base setup for ORM
- use SQLAlchemy
- provide get_db() dependency

1
doc/core/db/specs.md Normal file
View File

@@ -0,0 +1 @@
- db.py

3
doc/core/di/features.md Normal file
View File

@@ -0,0 +1,3 @@
- di
- global register for services
- no direct service import between apps

1
doc/core/di/specs.md Normal file
View File

@@ -0,0 +1 @@
- di.py

View File

@@ -0,0 +1,5 @@
- events
- apps can react on events
- apps can emit events
- events persist in db (audit/replay)
- allow wildcard subscribe (e.g. product.*)

1
doc/core/events/specs.md Normal file
View File

@@ -0,0 +1 @@
- events.py

1
doc/core/features.md Normal file
View File

@@ -0,0 +1 @@
- setup für den shop

View File

@@ -0,0 +1,6 @@
- loader
- load apps as python module
- discover apps/*/manifest.yaml
- order by app dependency (topological sort), circles not allowed
- check for conflicts
- mount each app router under /api/<app>

1
doc/core/loader/specs.md Normal file
View File

@@ -0,0 +1 @@
- loader.py

View File

@@ -0,0 +1,5 @@
- main
- entrypoint for backend
- build fastAPI
- run loader on lifespan startup
- expose /health and core settings routes

1
doc/core/main/specs.md Normal file
View File

@@ -0,0 +1 @@
- main.py

7
doc/core/specs.md Normal file
View File

@@ -0,0 +1,7 @@
- main — anwendung starten
- loader — apps laden
- config — liest zugänge aus env
- di — direkte apps kommunikation
- events — indirekte apps kommunikation
- db — datenbank kommunikation
- cache — redis kommunikation