Categories
self-hosted inventory-management erp bill-of-materials order-management manufacturing production-planning traceabilityStars
Forks
Watchers
Developer links
Craftplan
Every batch a craft business ships carries a recipe version, a cost, and a trail of ingredient lots, and Craftplan, an open-source ERP, keeps all three connected. Receiving stock against a purchase order records each supplier lot code and optional expiry date, and partial deliveries keep the order open. Customer orders appear on a delivery calendar and can generate invoices. Scheduled items wait on the production board as unbatched cards until Batch All creates one batch with a frozen copy of the recipe. Capacity warnings flag products over their daily limit, and a forecast highlights materials that will run short. Finishing a batch consumes ingredient lots earliest-expiry first, skips any lot on hold or rejected, and snapshots material, labor, and overhead costs. Recipes are versioned, so past costs never change. A blend made in-house can be stocked as its own material, with its actual yield, lot costs, and source lots intact. Allergens and nutrition facts roll up from each material through every recipe, and completed batches print A5 or compact labels with a scannable barcode. The Trace Center follows a supplier lot forward to every customer who received it, or a finished batch back to its sources. Recall mode can place the lot on hold, and the trace exports as CSV or prints for the recall file. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0 licensed.
Benefits
- See What Each Batch Costs
- Completing a batch snapshots material, labor, and overhead costs from the recipe version it ran with, so past costs stay accurate even after you edit that recipe.
- Plan Production From Real Orders
- Order items scheduled for a day appear as unbatched cards on a kanban board; pressing Batch All creates a batch with a frozen recipe snapshot and a unique code.
- Trace Any Lot In Both Directions
- Record supplier lot codes at receiving, then trace a lot forward to batches and customer orders or a batch back to its sources, and hold affected lots during a recall.
- Keep Your Data On Your Server
- One Docker Compose file starts the app, PostgreSQL 16, and S3-compatible photo storage, runs migrations on startup, and keeps recipes, customers, and orders on infrastructure you control.
Features
- Versioned Bills Of Materials
- Saving a recipe creates a new active version and archives the old one; costs roll up through sub-assemblies, and labor steps carry minutes, units per run, and rate overrides.
- Kanban Production Planner
- Phoenix LiveView drives a day-view kanban with Unbatched, Open, In Progress, and Done columns, drag-and-drop transitions, a week grid, and capacity warnings for products over their daily limit.
- Lots, Allergens, And Nutrition
- Allergen flags and nutritional facts aggregate from materials through recipes into products, and completed batches print A5 or compact labels with ingredients, allergens, and nutrition declarations.
- Trace Center And Recalls
- Forward, backward, and recall modes follow supplier lots through batches to customer destinations, place lots on hold, and export CSV or print reports for the recall file.
- JSON:API, GraphQL, And iCal
- JSON:API and GraphQL endpoints use encrypted API keys with CORS configuration, while a read-only iCal feed publishes deliveries and batches to Google Calendar, Apple Calendar, or any iCal app.
- Email Providers And Team Roles
- Admins invite Staff or Admin members from Settings, while transactional email goes out through SMTP, SendGrid, Mailgun, Postmark, Brevo, or Amazon SES, with credentials encrypted at rest.