How alysibak/carinfo works
CarInfo is a specs-first vehicle discovery and comparison platform. Shoppers browse or search vehicles, inspect a vehicle dossier, compare candidates, and explore estimated value and ownership costs; garages, VIN decoding, and account features provide separate supporting journeys. The server exposes vehicle, VIN, account, billing, and statistics APIs. The README documents major capabilities beyond the sampled source, so those are represented at their documented module paths; uncertain internal wiring is omitted.
Main entry points: App.tsx Web app routes · api.ts API client · car.service.ts Vehicle catalog service · billing.controller.ts Billing controller
Components 32
Vehicle discovery
- Web app routes
client/src/App.tsx - Browse and search
client/src/pages/Browse.tsx - Smart search
client/src/pages/SmartSearch.tsx - Vehicle dossier
client/src/pages/CarDetail.tsx - Vehicle comparison
client/src/pages/Compare.tsx - Curated collections
client/src/pages/Collection.tsx - Value matrix
client/src/pages/ValueMatrix.tsx - Garage and sharing
client/src/pages/DreamGarage.tsx - VIN decoder
client/src/pages/VinDecoder.tsx
Vehicle data and analytics
- Vehicle catalog service
server/src/services/car.service.ts - Dossier analytics
server/src/services/dashboard.service.ts - Vehicle enrichment
server/src/services/content-enrichment.ts - Record normalization
server/src/utils/car-normalize.ts - Ownership valuation
server/src/utils/vehicle-valuation.ts - NHTSA service
server/src/services/nhtsa.service.ts
Garage and accounts
- Account API client
client/src/services/accountApi.ts - Account API routes
server/src/routes/me.routes.ts - Account controller
server/src/controllers/me.controller.ts - User and garage store
server/src/db/user-store.ts - Authentication middleware
server/src/middleware/auth.ts - Billing routes
server/src/routes/billing.routes.ts - Billing controller
server/src/controllers/billing.controller.ts
API and integrations
- API client
client/src/services/api.ts - Vehicle API routes
server/src/routes/car.routes.ts - Vehicle controllers
server/src/controllers/car.controller.ts - VIN API routes
server/src/routes/vin.routes.ts - VIN controller
server/src/controllers/vin.controller.ts
Other components
- Shopper
- Clerk
- Stripe
- EPA vehicle data
- Browser session
Connections 39
- Shopper → Web app routes: uses
- Web app routes → Browse and search: routes to
- Web app routes → Smart search: routes to
- Web app routes → Vehicle dossier: routes to
- Web app routes → Vehicle comparison: routes to
- Web app routes → Curated collections: routes to
- Web app routes → Value matrix: routes to
- Web app routes → Garage and sharing: routes to
- Web app routes → VIN decoder: routes to
- Browse and search → API client: requests data
- Smart search → API client: requests data
- Vehicle dossier → API client: requests data
- Vehicle comparison → API client: requests data
- Value matrix → API client: requests data
- VIN decoder → API client: requests decode
- Garage and sharing → Account API client: syncs garage
- API client → Vehicle API routes: calls
- Vehicle API routes → Vehicle controllers: dispatches
- Vehicle controllers → Vehicle catalog service: queries
- Vehicle controllers → Dossier analytics: requests analytics
- Dossier analytics → Vehicle catalog service: loads vehicles
- Vehicle catalog service → Vehicle enrichment: enriches records
- Vehicle catalog service → Record normalization: normalizes records
- Dossier analytics → Ownership valuation: calculates ownership
- VIN decoder → VIN API routes: submits VIN
- VIN API routes → VIN controller: dispatches
- VIN controller → NHTSA service: decodes VIN
- Vehicle enrichment → EPA vehicle data: uses enrichment data
- Account API client → Account API routes: calls
- Account API routes → Authentication middleware: guards requests
- Account API routes → Account controller: dispatches
- Account controller → User and garage store: reads and writes
- Account controller → Vehicle catalog service: loads garage cars
- Clerk → Authentication middleware: provides identity
- Billing routes → Billing controller: dispatches
- Billing controller → User and garage store: updates account
- Billing controller → Stripe: creates sessions
- Stripe → Billing controller: sends webhooks
- Browser session → Web app routes: renders