Files
soleprint/docs/data/en/managed.md
2026-04-14 10:32:05 -03:00

41 lines
1018 B
Markdown

# Managed Room
A managed room wraps an existing application. Soleprint runs alongside it, providing tools and a sidebar without touching the app's source code.
## Structure
```
gen/myroom/
myapp/ # The app (cloned repos + Docker)
link/ # DB bridge (FastAPI adapter)
soleprint/ # Soleprint instance
```
## Wrapping mechanism
Nginx `sub_filter` injects sidebar CSS and JS into the app's HTML `</head>` tag. The app serves normally — soleprint attaches from the outside.
![Wrapping](../graphs/wrapping.svg)
## config.json
A managed room adds these fields to `config.json`:
- `managed.name` — the app name
- `managed.repos.backend` — backend repository
- `managed.repos.frontend` — frontend repository
## Sidebar
Loads from `/spr/sidebar.js` and `/spr/sidebar.css`, configured via `/api/sidebar/config`.
The sidebar is generic at runtime. All customization comes from `config.json`.
## Hosts
Add to `/etc/hosts`:
```
127.0.0.1 myroom.spr.local.ar myroom.local.ar
```