Community 93 Premium feature complete

This commit is contained in:
Eric Gullickson
2025-12-21 11:31:10 -06:00
parent 1bde31247f
commit 95f5e89e48
60 changed files with 8061 additions and 350 deletions

View File

@@ -2,15 +2,14 @@
## Architecture Summary
MotoVaultPro is a single-tenant vehicle management application built with a **6-container Docker-first architecture**. All development and deployment occurs in production-configured containers with no local installation dependencies.
MotoVaultPro is a single-tenant vehicle management application built with a **5-container Docker-first architecture**. All development and deployment occurs in production-configured containers with no local installation dependencies.
### Core Containers
1. **Traefik** - Reverse proxy and service discovery
2. **Frontend** - React SPA with Vite (Node.js 20 + nginx)
3. **Backend** - Node.js API with Fastify (Node.js 20)
4. **PostgreSQL** - Primary database (PostgreSQL 15)
5. **Redis** - Caching layer (Redis 7)
6. **Platform** - Vehicle data service (Python FastAPI)
3. **Backend** - Node.js API with Fastify (Node.js 20) - includes platform feature module
4. **PostgreSQL** - Primary database (PostgreSQL 18)
5. **Redis** - Caching layer (Redis 8)
### Key Architectural Principles
- **Production-Only**: All services use production builds and configuration
@@ -63,13 +62,13 @@ MotoVaultPro is a single-tenant vehicle management application built with a **6-
### Backend Network
- **Purpose**: API service communication
- **Type**: Bridge (non-internal)
- **Connected Services**: Traefik, Backend, Platform
- **Connected Services**: Traefik, Backend
- **Access**: External (requires Auth0 JWT validation)
### Database Network
- **Purpose**: Data layer isolation
- **Type**: Bridge (internal)
- **Connected Services**: Backend, Platform, PostgreSQL, Redis
- **Connected Services**: Backend, PostgreSQL, Redis
- **Access**: Internal only, no external exposure
## Request Flow
@@ -81,7 +80,7 @@ MotoVaultPro is a single-tenant vehicle management application built with a **6-
- Domain: motovaultpro.com or www.motovaultpro.com
- Path: / → Frontend (priority 10)
- Path: /api → Backend (priority 20)
- Path: /platform → Platform (priority 25)
- Path: /api/platform/*Backend (platform feature module)
3. Frontend/Backend → Process Request
4. Response → Traefik → User
```
@@ -196,12 +195,12 @@ MotoVaultPro is a single-tenant vehicle management application built with a **6-
- **Health**: Covered by backend `/health` endpoint and feature-specific logs
- **Configuration**:
- `backend/src/features/platform/domain/*.ts` - Business logic
- `backend/src/features/platform/data/*.ts` - Database + vPIC integration
- `backend/src/features/platform/data/*.ts` - Database queries
- **Secrets**:
- Reuses backend secrets (PostgreSQL, Auth0, etc.)
- **Purpose**:
- Vehicle make/model/trim/engine data
- VIN decoding (planned)
- Vehicle hierarchical data (years, makes, models, trims, engines)
- VIN decoding (Planned/Future - not yet implemented)
- Standardized vehicle information
## Platform Module Integration
@@ -380,7 +379,7 @@ REDIS_HOST: mvp-redis
### Container Commands (via Makefile)
```bash
make start # Start all 5 containers
make start # Start all containers
make stop # Stop all containers
make restart # Restart all containers
make rebuild # Rebuild and restart containers