docs: point README at split backend repo
This commit is contained in:
@@ -5,33 +5,24 @@ events (KCs), replacing the WordPress plugin "Workshop-Wahlen". See
|
|||||||
[plan-kcAppMultiTenantPlatform.prompt.md](plan-kcAppMultiTenantPlatform.prompt.md)
|
[plan-kcAppMultiTenantPlatform.prompt.md](plan-kcAppMultiTenantPlatform.prompt.md)
|
||||||
for the full architecture and phased roadmap.
|
for the full architecture and phased roadmap.
|
||||||
|
|
||||||
|
This repo holds the **Flutter clients**. The backend (NestJS API) moved to
|
||||||
|
its own repo: <https://git.konfi-castle.com/linus/KC-APP-Server>.
|
||||||
|
|
||||||
## Run with Docker
|
## Run with Docker
|
||||||
|
|
||||||
|
See the [KC-APP-Server README](https://git.konfi-castle.com/linus/KC-APP-Server)
|
||||||
|
for the backend/Docker setup. It expects a pre-built web bundle:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cp backend/.env.example backend/.env # fill in the secrets
|
(cd client/app && flutter build web --release)
|
||||||
# optional (push): put the Firebase service account at backend/serviceAccount.json
|
|
||||||
(cd client/app && flutter build web --release) # host build — see note below
|
|
||||||
docker compose up --build
|
|
||||||
```
|
```
|
||||||
|
|
||||||
`docker-compose.yml` starts PostgreSQL 16 and one `api` container (2-stage
|
By default the server's `docker-compose.yml` mounts `../KC-APP/client/app/build/web`
|
||||||
`Dockerfile`: NestJS build → slim runtime). The container runs
|
(sibling checkout); override with `WEB_CLIENT_BUILD_PATH` if your layout
|
||||||
`prisma migrate deploy` on start and serves the whole app — Flutter web
|
differs.
|
||||||
client + REST API — on <http://localhost:3000>. Requires Docker Compose v2.
|
|
||||||
|
|
||||||
The Flutter web bundle is built **on the host** and copied in (a Flutter
|
|
||||||
builder stage would pull a ~2.8 GB SDK image). So `flutter build web` must
|
|
||||||
run before `docker compose build`. Secrets come from `backend/.env`
|
|
||||||
(unquoted, Compose v2 strips quotes) and the service-account JSON is
|
|
||||||
bind-mounted read-only — neither is baked into the image.
|
|
||||||
|
|
||||||
## Structure
|
## Structure
|
||||||
|
|
||||||
- `backend/` — NestJS API (Prisma/PostgreSQL, Authentik OIDC as resource
|
|
||||||
server, guest/Konfi local accounts, roles/permissions foundation, file
|
|
||||||
sharing, chat, local/cloud sync). See [backend/README.md](backend/README.md)
|
|
||||||
for setup. Also serves the web client (see below) directly, so it's the
|
|
||||||
single entry point for the web experience.
|
|
||||||
- `client/app/` — the Flutter client (single codebase; **web** target
|
- `client/app/` — the Flutter client (single codebase; **web** target
|
||||||
enabled, mobile/desktop can be added later). Login (guest / local Teamer /
|
enabled, mobile/desktop can be added later). Login (guest / local Teamer /
|
||||||
invite redemption), role-aware home, guest Workshop-Wahl, file list,
|
invite redemption), role-aware home, guest Workshop-Wahl, file list,
|
||||||
|
|||||||
Reference in New Issue
Block a user