Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Codefied-CodePix/KaroCar-platform/llms.txt

Use this file to discover all available pages before exploring further.

KaroCar Platform is a production-grade monorepo built on Turborepo and pnpm workspaces, unifying six Next.js applications — public website, admin dashboard, authentication service, customer portal, vendor dashboard, and corporate portal — alongside a suite of shared packages. Whether you’re an internal engineer onboarding to the codebase or an integrator extending one of the apps, everything you need lives in a single, well-orchestrated repository with consistent tooling, shared UI components, and fast incremental builds out of the box.

Multi-App Architecture

The platform is intentionally split into purpose-built Next.js applications, each owned by a distinct user group, while sharing a common design system and configuration layer. All apps live under the apps/ directory, and all shared code lives under packages/.
AppDirectoryPurpose
Webapps/webPublic-facing marketing and service discovery website
Adminapps/adminInternal admin dashboard for operations and oversight
Authapps/authCentralised authentication and session service
Customerapps/customerSelf-service portal for end customers
Vendorapps/vendorDashboard for car-service vendors and partners
Corporateapps/corporatePortal for corporate fleet and B2B accounts
All six applications are 100% TypeScript and share the same @karo-car/ui component library, ESLint configuration, and TypeScript presets — so a change to a shared package is immediately available to every app on the next build.

Key Features

Turborepo Task Orchestration

Turborepo’s task graph ensures packages are built before the apps that depend on them, and unchanged work is never repeated thanks to content-addressed local caching.

pnpm Workspaces

A single pnpm install at the repo root installs dependencies for all six apps and every shared package, with hard-linked node_modules that keep disk usage minimal.

Shared @karo-car/ui Library

A first-party React component library consumed by every app. Update a button once and the change ripples across the entire platform without copy-pasting code.

TypeScript Strict Mode

Shared tsconfig presets (in packages/typescript-config) enforce strict TypeScript across every workspace package, catching type errors before they reach production.

Tailwind CSS v4

Each application is styled with Tailwind CSS v4, giving developers a utility-first workflow that stays consistent with the shared design tokens defined in @karo-car/ui.

ESLint & Prettier Config Sharing

packages/eslint-config exports reusable ESLint rule sets (including eslint-config-next and eslint-config-prettier), so every app lints and formats code identically with zero duplication.

Monorepo Philosophy

KaroCar Platform treats the entire car-services product as a single unit of deployment reasoning while still allowing each application to be developed, tested, and deployed independently. This philosophy, sometimes called a focused monorepo, offers the best of both worlds:
  • Atomic changes — a pull request can update the UI library and all consuming apps in one commit, eliminating version-skew bugs.
  • Shared standards — linting, formatting, and TypeScript rules are defined once at the package level, not duplicated in every app’s config files.
  • Incremental builds — Turborepo’s task graph and local (or remote) cache mean that only the apps and packages affected by a change are rebuilt, keeping CI times fast even as the codebase grows.
  • Independent deployments — despite living in the same repo, each Next.js app produces its own .next build artifact and can be deployed to its own Vercel project or container.
Turborepo’s remote caching (via Vercel) lets your entire team and CI/CD pipeline share a single build cache. Once one machine builds a package, no other machine ever rebuilds it from scratch — see the Remote Caching guide to enable it.

What’s Next?

Follow the Quickstart to clone the repo and run all six apps locally in under five minutes, or jump straight to Monorepo Structure for a deep dive into the directory layout, workspace globs, and Turborepo task definitions.

Quickstart

Clone the repo, install dependencies, and start every app with a single command.

Monorepo Structure

Explore the directory layout, pnpm workspace globs, and Turborepo task graph in detail.

Build docs developers (and LLMs) love