68 lines
3.7 KiB
Markdown
68 lines
3.7 KiB
Markdown
- unidesk/ (Repository root: configuration, orchestration, CLI, and documentation)
|
|
- AGENTS.md (Top-level agent index and `scripts/cli.ts` usage guide)
|
|
- TEST.md (Manual CLI test plan following cli-spec expectations)
|
|
- config.json (Single source of truth for ports, tokens, runtime, paths, and provider identity)
|
|
- docker-compose.yml (Main server orchestration for database, backend-core, frontend, provider-gateway)
|
|
- package.json / bun.lock (Root Bun tooling for CLI checks)
|
|
- .gitignore
|
|
- reference -> docs/reference (Compatibility symlink for older references)
|
|
- scripts/ (Unified CLI and implementation modules)
|
|
- cli.ts (Single Bun CLI entry)
|
|
- tsconfig.json (TypeScript check scope for CLI)
|
|
- src/ (CLI business logic modules; `cli.ts` remains a thin router)
|
|
- config.ts (Root config loading and validation)
|
|
- docker.ts (Docker Compose env generation, start/stop/status/logs)
|
|
- jobs.ts (Fire-and-Forget job state under `.state/jobs/`)
|
|
- check.ts (Formal checks)
|
|
- debug.ts (Real-flow debug helpers)
|
|
- command.ts (Bounded command execution helpers)
|
|
- output.ts (JSON output helpers)
|
|
- e2e.ts (Public frontend/provider ingress, internal core/database, and Playwright frontend E2E checks)
|
|
- logs/ (Generated service logs; ignored by git)
|
|
- .state/ (Generated job state and compose env; ignored by git)
|
|
- docs/
|
|
- issue/ (Manual test issue records)
|
|
- reference/ (Long-term reference documents)
|
|
- arch.md (Distributed work platform architecture)
|
|
- repo-tree.md (This repository structure reference)
|
|
- cli.md (CLI command model and async job contract)
|
|
- config.md (Config and runtime rules)
|
|
- deployment.md (Docker stack deployment and health criteria)
|
|
- frontend.md (Frontend layout and design rules)
|
|
- provider-gateway.md (Provider connection and host SSH maintenance bridge)
|
|
- observability.md (Logs and status visibility)
|
|
- e2e.md (Delivery gate, Playwright frontend E2E, and database persistence checks)
|
|
- src/ (TypeScript component monorepo)
|
|
- package.json (Component workspace metadata)
|
|
- bun.lock (Component dependency lockfile)
|
|
- tsconfig.base.json (Project references for component checks)
|
|
- tsconfig.check.json (No-emit TypeScript check scope for all components)
|
|
- components/
|
|
- shared/ (Shared message types and utilities)
|
|
- package.json
|
|
- tsconfig.json
|
|
- src/index.ts
|
|
- backend-core/ (UniDesk stateless core service container)
|
|
- package.json
|
|
- tsconfig.json
|
|
- Dockerfile
|
|
- src/index.ts (Internal REST API, public provider ingress WebSocket, scheduler, database access, system/Docker status storage API)
|
|
- frontend/ (Frontend web application container)
|
|
- package.json
|
|
- tsconfig.json
|
|
- Dockerfile
|
|
- src/index.ts (Bun static server, login/session handling, and same-origin internal API proxy)
|
|
- src/app.tsx (TypeScript + React browser app source; `/app.js` is generated by Bun at runtime)
|
|
- public/ (HTML/CSS static assets for the compact industrial console; no handwritten app JS)
|
|
- provider-gateway/ (Compute node Provider Gateway container)
|
|
- package.json
|
|
- tsconfig.json
|
|
- Dockerfile
|
|
- src/index.ts (WebSocket client, heartbeat, system/Docker telemetry, Docker adapter, provider.upgrade handler, Host SSH / WSL SSH maintenance probe)
|
|
- scripts/host-ssh-shell.sh (Optional maintenance-only SSH bridge)
|
|
- database/ (PostgreSQL initialization and configuration)
|
|
- config/postgresql.conf
|
|
- init/001_unidesk_init.sql
|
|
- microservices/ (Reserved for future stateless microservices)
|
|
- example-service/
|