CarDoctorAI.com | Car Problem? Get Answers.
- Vercel AI SDK for streaming chat, tool calls, artifacts, and usage data
- OpenAI models for chat, reasoning, artifacts, and mechanic web search
- TokenLens for model usage enrichment
- OpenAI
gpt-5.2(varied reasoning effort) -chat-model,chat-model-reasoning,artifact-model, andfindMechanicsearch with OpenAI web search - OpenAI
gpt-5-nano-title-modelfor chat title generation
findMechanic- Search for local mechanics, relevant to chat transcriptcreateDocument- Create custom, comprehensive, structured diagnostic report and other artifacts/documentsupdateDocument- Update existing artifactsrequestSuggestions- Generate document suggestionsgetWeather- Get weather data (legacy)
Free/limited users have blocked versions of gated artifact tools
- Auth.js / NextAuth credentials auth for registered and guest users
- Stripe Checkout for day passes and monthly subscriptions
- Stripe webhooks for subscription and day-pass entitlement updates
- Neon Serverless Postgres for users, chats, messages, documents, votes, subscriptions, and streams
- Drizzle ORM and Drizzle Kit for schema, queries, and migrations
- Vercel Blob for uploaded file storage
- Vercel KV / Upstash Redis for chat rate limiting and resumable stream support
- Next.js App Router with React Server Components and Server Actions
- React 19
- shadcn/ui with Radix UI primitives
- Tailwind CSS 4
- Framer Motion
- Lucide Icons
- Geist font
- Next.js 16
- TypeScript
- pnpm
- Biome and Ultracite for formatting and lint checks
- Playwright for end-to-end tests
- Vercel Analytics and OpenTelemetry for production telemetry
- Guest and registered chat sessions
- Automotive diagnostic Q&A
- Diagnostic report artifacts
- Local mechanic search by city
- Document, code, sheet, image, and diagnostic artifact types
- File uploads
- Chat history, votes, suggestions, and visibility controls
- Pricing page, dashboard, account deletion, and password changes
GET /api/auth/[...nextauth]- Auth.js route handlerPOST /api/auth/[...nextauth]- Auth.js route handlerGET /api/auth/guest- Create guest session and redirectPOST /api/chat- Stream AI chat response and save messagesDELETE /api/chat- Delete a chatGET /api/chat/[id]/stream- Resume or fetch chat streamGET /api/history- Get chat historyDELETE /api/history- Delete user chat historyGET /api/document- Get latest or historical document versionsPOST /api/document- Save document versionDELETE /api/document- Delete document versionsGET /api/suggestions- Get document suggestionsGET /api/vote- Get message votes for a chatPATCH /api/vote- Update message votePOST /api/files/upload- Upload file to Vercel BlobPOST /api/checkout_sessions- Create Stripe checkout sessionPOST /api/webhooks/stripe- Handle Stripe checkout and subscription webhooksPOST /api/user/change-password- Change current user's passwordDELETE /api/user/delete-account- Delete current user account