puemos/craftplan
puemos/craftplan has 1,157 GitHub stars and 68 forks. GitHot measured +1 stars in 24 hours and +1 in 7 days. Last checked 2026-11-14 10:17 UTC. Last push 2026-11-01.
What you can do
- Product catalog with photos and labels
- Versioned Bills of Materials — edit latest, older versions read-only
- Automatic cost rollups across nested BOMs
- Labor steps with time and cost tracking
Measured star growth
- in 24h
- +1
- in 7 days
- +1
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
About
Self-hosted software for managing artisanal D2C micro-businesses
Self-hostedREADME.md
Original
Craftplan
Open-source ERP for small-scale artisanal manufacturers and craft businesses
Craftplan brings all essential business tools into one platform: catalog management, inventory control, order processing, production planning, purchasing, and CRM, so you can get off the ground quickly without paying for multiple separate platforms.

Features
Catalog & BOM
- Product catalog with photos and labels
- Versioned Bills of Materials — edit latest, older versions read-only
- Automatic cost rollups across nested BOMs
- Labor steps with time and cost tracking
Orders & Invoices
- Customer order processing with calendar-based scheduling
- Invoice generation
- Order item allocation to production batches
Production
- Production batching with automatic material consumption
- Cost snapshots per batch
- Completion workflow with produced quantity tracking
Inventory
- Raw material management with lot traceability
- Stock movements (consume, receive, adjust)
- Allergen and nutritional fact tracking
- Demand forecasting and reorder planning
Purchasing
- Purchase orders and supplier management
- Receiving into stock with lot creation
CRM
- Customer and supplier database
- Order history and statistics
Import / Export
- CSV bulk import for products, materials, and customers
- CSV export
- Transactional email delivery configurable from the UI
- SMTP, SendGrid, Mailgun, Postmark, Brevo, and Amazon SES
- API keys encrypted at rest
Calendar Feed
- iCal (.ics) subscription URL for Google Calendar, Apple Calendar, or any iCal-compatible app
- Includes order deliveries and production batch schedules
- Generate and revoke feeds from Settings
API
- JSON:API and GraphQL endpoints for programmatic access
- API key authentication with encrypted storage
- CORS configuration
Access Control
- Admin and staff roles
- Policy-based authorization on all resources
Global Search
- Command palette (
Cmd+K/Ctrl+K) for instant access to any record - Fuzzy search across products, materials, orders, customers, and batches
Screenshots
![]() |
![]() |
![]() |
![]() |
![]() |
Tech Stack
Elixir · Ash Framework · Phoenix LiveView · PostgreSQL · Tailwind CSS
Getting Started
Deploy Craftplan on your own server. No need to clone the repo:
curl -O https://raw.githubusercontent.com/puemos/craftplan/main/docker-compose.yml
curl -O https://raw.githubusercontent.com/puemos/craftplan/main/.env.example
cp .env.example .env # Fill in the required secrets (see .env.example)
docker compose up -d
This starts Craftplan, PostgreSQL, and SeaweedFS with database migrations running automatically.
Upgrading from MinIO? The updated Compose file automatically migrates and verifies existing photos before starting Craftplan. Later SeaweedFS upgrades skip migration. Keep your .env and volumes; see the upgrade guide for disk-space requirements and recovery.
See the self-hosting guide for single-container mode, Railway deployment, reverse proxy setup, and more.
Development Setup
For contributors who want to work on the codebase. Prerequisites: Docker and mise
mise install # Install Elixir, Erlang/OTP, and Node.js versions from mise.toml
mise run services:up # Start PostgreSQL + SeaweedFS + Mailpit
mise run setup # Install deps, migrate, build assets, seed
mise run dev # Start at localhost:4000
See the development setup guide for detailed instructions.
Why Craftplan?
- Purpose-built for artisanal manufacturing — not a generic ERP adapted to fit; workflows are designed around small-batch, made-to-order production
- Allergen & nutritional tracking — first-class support for food and beverage producers who need to track ingredients and generate nutrition labels
- BOM versioning with cost rollups — iterate on recipes and formulas while keeping full history and accurate costing
- Self-hosted, no vendor lock-in — your data stays on your infrastructure, backed by PostgreSQL
Documentation
Contributing
Contributions are welcome. For major changes, please open an issue first to discuss your proposal.
mise run test # Run the test suite
mise run format # Format code (Styler, Spark, Tailwind, HEEx)
mise run format:check # Check formatting without modifying files
mise run ci # Run the full CI suite locally (requires services:up)
Commits follow the convention: type(scope): description (e.g., feat(batching):, fix(orders):, ui(production):).
License
This project is licensed under the AGPLv3 License. See the LICENSE file for details.
Support
Explore related projects
awesome-selfhosted/awesome-selfhosted
A list of Free Software network services and web applications which can be hosted on your own servers
336,941 starsimmich-app/immich
High performance self-hosted photo and video management solution.
119,157 starsStirling-Tools/Stirling-PDF
#1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
96,566 starslouislam/uptime-kuma
A fancy self-hosted monitoring tool
94,075 stars



