Carbon: Open Source ERP, MES, and QMS for Manufacturing

Carbon: Open Source ERP, MES, and QMS for Manufacturing

Summary

Carbon is an open-source ERP, MES, and QMS solution tailored for complex manufacturing environments. It addresses the need for modern, API-first tooling in manufacturing, offering flexibility for various production scenarios. This project aims to overcome vendor lock-in and provide a highly extensible platform.

Repository Info

Updated on January 27, 2026
View on GitHub

Tags

Click on any tag to explore related repositories

Introduction

Carbon is an open-source Enterprise Resource Planning (ERP), Manufacturing Execution System (MES), and Quality Management System (QMS) specifically designed for manufacturing. It is ideal for businesses involved in complex assembly, job shops, and configure-to-order manufacturing processes. With 1670 stars and 170 forks on GitHub, Carbon offers a modern, API-first approach to manufacturing operations, built with TypeScript and leveraging technologies like Supabase and Remix. It aims to provide a flexible and extensible platform to avoid common pitfalls like vendor lock-in.

Installation

To get Carbon up and running locally, follow these steps:

  1. Clone the repository:
    git clone https://github.com/crbnos/carbon.git
    cd carbon
    
  2. Ensure Docker is installed on your system as it's used for local development.
  3. Configure external services: You will need accounts for Upstash (Redis), Trigger.dev (Job runner), and Posthog (Product analytics). Free tiers are available for local development.
  4. Install dependencies and start database containers:
    nvm use           # use node v20
    npm install       # install dependencies
    npm run db:start  # pull and run the containers
    
  5. Create and configure your .env file: Copy .env.example to .env and fill in the required environment variables for Supabase, Upstash, Trigger.dev, Posthog, Stripe, and authentication methods (Resend for email or Google OAuth).
  6. Build the database and packages:
    npm run db:build     # run db migrations and seed script
    npm run build        # build the packages
    
  7. Start the applications:
    npm run dev
    npm run dev:mes        # to run all apps & packages
    

After these steps, you can access the applications locally.

Examples

Carbon is a monorepo structured with /apps for applications and /packages for shared code. You can explore the following applications locally:

The project also provides examples for extending the platform in the examples folder. The API documentation is auto-generated and available within the ERP app at ${ERP}/x/api/js/intro. You can interact with the API from another codebase using Supabase client libraries or directly within the monorepo using @carbon/auth utilities.

Why use Carbon?

Carbon was developed to address critical gaps in existing manufacturing software solutions. It offers:

  • Modern, API-first tooling: Unlike many legacy systems, Carbon is built with a focus on modern APIs, enabling seamless integration and extensibility.
  • Avoidance of vendor lock-in: The open-source nature and modular architecture empower companies to customize and extend the platform without being tied to a single vendor.
  • Flexibility for unique needs: Recognizing that no "perfect ERP" exists for every company, Carbon is designed to be highly adaptable, allowing businesses to build their own apps through its API.
  • Comprehensive functionality: It covers essential aspects of manufacturing with integrated ERP, MES, and QMS capabilities, including nested BoM, traceability, MRP, and configurator features.
  • Robust technical foundation: Key technical highlights include full-stack type safety, real-time database subscriptions, attribute-based and role-based access control, and row-level security.

Links