CROP
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 components

Database Layer

Type-safe MongoDB integration:

  • lib/db/collections.ts - Collection getters with indexes
  • lib/db/crud.ts - Generic CrudRepository pattern
  • lib/types/database.ts - Entity type definitions

Entities

EntityDescription
PartsAuto parts catalog
BrandsManufacturers
CategoriesHierarchical categories
UsersSynced from Clerk
OrdersCustomer orders
AnalyticsEventUser behavior tracking
ActivityLogAdmin 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 connection
  • CLERK_* - Authentication
  • NEXT_PUBLIC_* - Client-side config
  • CROP-front - Customer-facing storefront
  • CROP-parts-services - Backend microservices
  • crop-docs - Documentation portal

Keep this document updated when architecture changes.

On this page