docs: refresh architecture and runtime documentation
- align architecture, development, MCP, and scenario docs with current code - remove obsolete key descriptor document and stale keys/auth references
This commit is contained in:
+20
-8
@@ -26,8 +26,10 @@ Copy `.env.example` to `.env` and fill in the required values before running.
|
||||
| Variable | Default | Description |
|
||||
|---|---|---|
|
||||
| `PORT` | `3000` | HTTP port |
|
||||
| `KEYS_DIR` | `keys` | Directory containing `*.json` key descriptors |
|
||||
| `KEYS_DIR` | `keys` | Directory for key material used by credential/snippet workflows |
|
||||
| `DB_PATH` | `data/sessions.db` | SQLite database file |
|
||||
| `SESSION_IDLE_TIMEOUT_MINUTES` | `30` | Idle timeout before open sessions are closed |
|
||||
| `SESSION_DELETE_CLOSED_DAYS` | `7` | Retention period for closed sessions |
|
||||
| `PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH` | _(Playwright default)_ | Path to Chromium binary. Set automatically in Docker (`/usr/bin/chromium`). |
|
||||
|
||||
---
|
||||
@@ -59,7 +61,13 @@ The server listens on port **3000** by default.
|
||||
npm -w client run dev
|
||||
```
|
||||
|
||||
The Vite dev server runs on **http://localhost:5173** and proxies all API paths (`/environments`, `/sessions`, `/scenarios`, `/keys`, `/login`, `/mcp`) to the server at `localhost:3000`.
|
||||
The Vite dev server runs on **http://localhost:5173** and proxies these API prefixes to `localhost:13000` (or `localhost:3000` when running server locally):
|
||||
|
||||
- `/environments`
|
||||
- `/credentials`
|
||||
- `/snippets`
|
||||
- `/sessions`
|
||||
- `/scenarios`
|
||||
|
||||
**Production build**:
|
||||
|
||||
@@ -201,7 +209,7 @@ docker compose logs -f
|
||||
|
||||
## Client overview
|
||||
|
||||
The client (`client/`) is a React 19 + TypeScript SPA built with Vite. It provides a browser UI for managing environments, sessions, keys, and scenarios.
|
||||
The client (`client/`) is a React 19 + TypeScript SPA built with Vite. It provides a browser UI for managing environments, credentials, snippets, sessions, scenarios, and runs.
|
||||
|
||||
### Tech stack
|
||||
|
||||
@@ -221,11 +229,11 @@ The client (`client/`) is a React 19 + TypeScript SPA built with Vite. It provid
|
||||
```
|
||||
client/
|
||||
src/
|
||||
api/ API client modules (environments, keys, sessions, scenarios)
|
||||
api/ API client modules (environments, credentials, snippets, sessions, scenarios)
|
||||
hooks/ useTheme (light/dark persistence)
|
||||
i18n/ i18next bootstrap + locales/en.json
|
||||
pages/ EnvironmentsPage, KeysPage, SessionsPage, ScenariosPage
|
||||
ui/ Reusable component library
|
||||
pages/ Environment/Credential/Snippet/Session/Scenario/Run pages
|
||||
ui/ Reusable component library
|
||||
Badge, Breadcrumbs, Button, Card, Input, Select,
|
||||
SidePanel, Table, ThemeSwitcher, Timestamp
|
||||
.storybook/
|
||||
@@ -239,10 +247,14 @@ Hash-based routing (`/#/path`) avoids conflicts with the Vite dev-server proxy.
|
||||
| Route | Page |
|
||||
|---|---|
|
||||
| `/#/environments` | Environment list |
|
||||
| `/#/keys` | Key list |
|
||||
| `/#/credentials` | Credential list |
|
||||
| `/#/snippets` | Snippet list |
|
||||
| `/#/sessions` | Session list |
|
||||
| `/#/scenarios` | Scenario list |
|
||||
| `/#/runs` | Cross-scenario runs list |
|
||||
|
||||
### Theming
|
||||
|
||||
Light/dark theme is toggled by the `ThemeSwitcher` button in the sidebar header. The selection is persisted to `localStorage` and applied as `data-theme` on `<html>` before React mounts (anti-FOUC inline script in `index.html`).
|
||||
Light/dark theme is toggled by the `ThemeSwitcher` button in the sidebar footer. The selection is persisted to `localStorage` and applied as `data-theme` on `<html>` before React mounts (anti-FOUC inline script in `index.html`).
|
||||
|
||||
The sidebar footer also shows the app version read from the workspace root `package.json` and injected via Vite `define`.
|
||||
|
||||
Reference in New Issue
Block a user