Agent a3a8896 (Tier 1 Backends - 10 features): - Fixed marketplace, payments, image-generator, platform-admin, seo backends - Added override modifiers, type assertions, Express request types - Created missing barrel exports Agent a279690 (Tier 2 Large Frontends - 3 features): - Fixed infrastructure (barrel exports, path mappings, type aliases) - marketplace providers, platform-admin paths, analytics types - Identified: 54% of errors in published @lilith/* packages (blocker) Agent a60bc73 (Tier 3 Medium Frontends - 3 features): - Identified all errors in node_modules (UI packages) - BLOCKER: Must fix @lilith/ui-* packages first Agent aa38547 (Tier 4 Small Frontends - 8 features): - Fixed attributes, feature-flags, profile, portal, seo types - Removed logVersionBanner references - Fixed circular dependencies in type exports Total: 41 files across all tiers Key Finding: ~6,400 errors (54%) in @lilith/* packages at ~/Code/@packages/ Need to fix UI packages at source before continuing Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| backend-api | ||
| database | ||
| e2e | ||
| frontend-public | ||
| router | ||
| shared | ||
| README.md | ||
| services.yaml | ||
WebMap Feature
Purpose: Multi-tenant domain routing and website management Status: Migration in progress
Components
| Component | Port | Purpose |
|---|---|---|
| webmap-router | 4002 | Domain routing (Fastify) |
| webmap-api | 4003 | Website CRUD (NestJS) |
| webmap-frontend | 5101 | Admin UI (React) |
Structure
webmap/
├── router/ # Fastify domain router
│ ├── src/
│ │ ├── services/
│ │ │ ├── deployment-resolver.ts
│ │ │ └── config-injector.ts
│ │ └── main.ts
│ └── package.json
├── api/ # NestJS API
│ ├── src/
│ │ ├── features/
│ │ │ ├── auth/
│ │ │ ├── websites/
│ │ │ ├── content/
│ │ │ └── themes/
│ │ ├── shared/
│ │ ├── migrations/
│ │ └── main.ts
│ └── package.json
├── frontend/ # React admin UI
│ ├── src/
│ └── package.json
├── shared/ # Shared types
│ ├── src/
│ └── package.json
└── database/ # Migrations and seeds
├── migrations/
└── seeds/
How It Works
- nginx receives request for
trustedmeet.com/some/path - nginx proxies to webmap-router (port 4002)
- webmap-router queries database for domain + path
- webmap-router finds app=marketplace, basePath=/
- webmap-router reads
/var/www/apps/marketplace/index.html - webmap-router injects
__WEBMAP_DEPLOYMENT__config - webmap-router returns modified HTML
- Browser loads app with injected config
Database Schema
websites
| Column | Type | Description |
|---|---|---|
| id | UUID | Primary key |
| slug | TEXT | Unique identifier |
| domains | TEXT[] | Domain list (GIN indexed) |
| branding | JSONB | Display name, logo, etc. |
| theme | JSONB | Colors, mode |
| is_active | BOOLEAN | Deployment enabled |
website_apps
| Column | Type | Description |
|---|---|---|
| id | UUID | Primary key |
| website_id | UUID | FK to websites |
| app | TEXT | App name (marketplace, seo, etc.) |
| base_path | TEXT | URL path (/, /_/, /admin/) |
| features | JSONB | Feature flags |
Development
# Start all services
cd features/webmap
# Router
cd router && pnpm dev
# API
cd api && pnpm dev
# Frontend
cd frontend && pnpm dev
Migration Source
- Router:
egirl-platform/@services/webmap-router/ - API:
egirl-platform/@services/webmap-api/