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.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.
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 theapps/ directory, and all shared code lives under packages/.
| App | Directory | Purpose |
|---|---|---|
| Web | apps/web | Public-facing marketing and service discovery website |
| Admin | apps/admin | Internal admin dashboard for operations and oversight |
| Auth | apps/auth | Centralised authentication and session service |
| Customer | apps/customer | Self-service portal for end customers |
| Vendor | apps/vendor | Dashboard for car-service vendors and partners |
| Corporate | apps/corporate | Portal 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
.nextbuild artifact and can be deployed to its own Vercel project or container.
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.
