ProjectsAdmin Panel
Architecture Overview
Admin dashboard for CROP auto parts e-commerce platform. Provides: - Catalog management and quality monitoring - Order management - User administration -...
Architecture Overview
Updated: 2025-01-29
Stack
- Framework: Next.js 16 App Router with Bun runtime
- UI: React 19, Tailwind CSS, shadcn/ui components
- Database: MongoDB with type-safe CRUD layer
- Auth: Clerk for authentication
- Charts: Recharts for analytics visualization
Project Purpose
Admin dashboard for CROP auto parts e-commerce platform. Provides:
- Catalog management and quality monitoring
- Order management
- User administration
- Health analytics and monitoring
- Vendor onboarding
Key Directories
app/
dashboard/ # Main admin interface
catalog/ # Catalog health and quality
health/ # System monitoring
orders/ # Order management
parts/ # Parts catalog CRUD
users/ # User administration
vendors/ # Vendor management
api/ # API routes
lib/
db/ # MongoDB connection and CRUD
types/ # TypeScript types
auth/ # Clerk integration
components/
ui/ # shadcn/ui componentsDatabase Layer
Type-safe MongoDB integration:
lib/db/collections.ts- Collection getters with indexeslib/db/crud.ts- Generic CrudRepository patternlib/types/database.ts- Entity type definitions
Entities
| Entity | Description |
|---|---|
| Parts | Auto parts catalog |
| Brands | Manufacturers |
| Categories | Hierarchical categories |
| Users | Synced from Clerk |
| Orders | Customer orders |
| AnalyticsEvent | User behavior tracking |
| ActivityLog | Admin action audit trail |
API Routes
Dashboard APIs under app/api/:
/api/parts- Parts CRUD/api/orders- Order management/api/health/*- System health checks/api/catalog/*- Catalog quality metrics/api/vendors- Vendor management
Environment
Required environment variables validated on startup:
MONGODB_URI- Database connectionCLERK_*- AuthenticationNEXT_PUBLIC_*- Client-side config
Related Systems
- CROP-front - Customer-facing storefront
- CROP-parts-services - Backend microservices
- crop-docs - Documentation portal
Keep this document updated when architecture changes.