41 lines
1018 B
Markdown
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.
|
|
|
|

|
|
|
|
## 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
|
|
```
|