Update wiki page 'Architecture'
@@ -35,21 +35,25 @@ crates/
|
|||||||
|
|
||||||
## Traffic Flow
|
## Traffic Flow
|
||||||
|
|
||||||
|
In production, Traefik is the entry point (shared external service). API and frontend run on separate subdomains — no internal proxy needed.
|
||||||
|
|
||||||
```
|
```
|
||||||
User's Browser
|
User's Browser
|
||||||
│
|
│
|
||||||
▼
|
▼
|
||||||
Nginx (Reverse Proxy)
|
Traefik (external, shared)
|
||||||
├── /api/* ──────────────► thoughts (API server :8000)
|
├── api.domain.com ──────► thoughts (API server :8000)
|
||||||
│ /.well-known/* │
|
|
||||||
│ /users/* (AP Accept) └──► PostgreSQL
|
|
||||||
│ │
|
│ │
|
||||||
└── /* ──────► Next.js NATS JetStream
|
└── domain.com ──────────► Next.js Frontend (:3000)
|
||||||
Frontend │
|
│
|
||||||
|
PostgreSQL NATS JetStream
|
||||||
|
│
|
||||||
thoughts-worker
|
thoughts-worker
|
||||||
(AP delivery, notifications)
|
(AP delivery, notifications)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
In development, services are exposed directly on localhost ports — no proxy needed.
|
||||||
|
|
||||||
## Domain Layer
|
## Domain Layer
|
||||||
|
|
||||||
`crates/domain` defines only pure types and port traits — no framework or DB dependencies:
|
`crates/domain` defines only pure types and port traits — no framework or DB dependencies:
|
||||||
|
|||||||
Reference in New Issue
Block a user