Files
pikasTech-unidesk/docs/reference/repo-tree.md
T

3.7 KiB

  • 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)
          • 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/