Celerp
Free business management software for you and your office. Setup in minutes. Easy enough for solo entrepreneurs and powerful enough for large enterprises
Inventory, invoicing, purchasing, consignment, manufacturing, accounting, and CRM - in one app, on your computer. No subscription. No cloud required.
Website: www.celerp.com
Celerp is simple to use, flexible, customizable, and designed to transition your business into the AI age with no technical knowledge needed to setup your whole office. We want to put businesses back in charge of their data.
Screenshots
Real double-entry accounting, multi-location inventory, manufacturing, and a built-in REST API - one self-hosted app.
Trial balance - ties out to zero |
Balance sheet - live from the ledger |
General ledger - full drill-down |
Inventory - multi-location, barcode, valuation |
Production planning - work orders, priorities, due dates |
REST API - integrate anything |
Dashboard - revenue trend, AR aging, inventory mix |
More in the press kit.
Install
| Platform | Link |
|---|---|
| Windows (.exe) | Latest release |
| Linux (.AppImage) | Latest release |
| macOS (.dmg) | Latest release |
Double-click. No account. No credit card. Your computer securely becomes the server for your office
Or install via pip:
pip install celerp
celerp init # sets up the database and launches Celerp
Open http://localhost:8080. Done. Your office can securely access the system at your IP address :8080.
No PostgreSQL to install: celerp init uses your existing PostgreSQL server if one is
running, and otherwise starts a self-contained bundled database — no sudo, no system
service. Point it at a specific server with celerp init --db-url postgresql+asyncpg://….
Running headless or under a process manager? Use celerp init --no-start to set up
without launching, then have your service run celerp start — see
Run as a service (systemd).
What's inside
- Track inventory across locations, scan barcodes, print labels
- Send invoices, purchase orders, quotations, credit notes
- Double-entry accounting with chart of accounts, P&L, balance sheet
- Connect Shopify, WooCommerce, QuickBooks, Xero
- Manufacturing - BOMs, production orders, merge/split/transform
- CRM - contacts, pipeline, memos, activity feed
- Recurring subscriptions with automatic invoicing
- CSV import/export everything - idempotent, audited, column-mapped
- Multi-company from one install
- Role-based permissions - five access levels (viewer, operator, manager, admin, owner) for controlled employee access
- Works offline, no internet required
How it works
Celerp runs entirely on your machine. Your data never leaves your computer.
- No setup - the desktop app bundles Postgres, runs migrations on launch, opens in your browser
- No lock-in - your data stays in a standard Postgres database you control
- Teams - run as a local server, teammates connect over the LAN
Modules
Every business domain is a self-contained module. The full set ships with the download:
| Module | What it does |
|---|---|
celerp-inventory |
Items, stock levels, locations, barcode scanning, valuation |
celerp-contacts |
Contacts, addresses, tags, notes, file attachments |
celerp-docs |
Invoices, POs, quotations, credit notes, receipts |
celerp-accounting |
Chart of accounts, journal entries, P&L, balance sheet |
celerp-reports |
AR/AP aging, sales, purchases, inventory valuation |
celerp-subscriptions |
Recurring billing, auto-invoice generation |
celerp-manufacturing |
BOMs, production orders, merge/split/transform |
celerp-labels |
Label printing, barcode generation |
celerp-verticals |
Industry presets - configure for your business type on first run |
The onboarding wizard lets you pick your industry. Modules can be toggled any time at Settings > Modules.
Build your own
"My vision for Celerp is that anyone with AI coding tools can describe what their business needs and get a module that imports right into the system."
Noah Severs, Founder
Every feature above is a module on one loader API, and you can build against the same API. A module is a Python package you drop into Celerp's modules/ folder; it adds its own tables, API routes, and UI pages, no fork or build step.
- celerp-module-template - a working example module you can run in about ten minutes, plus a lint script
- Build a module - the guide
- community-modules - a directory of community-built modules, and how to list yours
Architecture
- Event-sourced - every change is an immutable ledger entry, projections materialize queryable state
- Modular - each domain is a plugin with its own models, routes, and projections
- Python/FastAPI backend, FastHTML UI, embedded PostgreSQL
- SQLite in-memory for tests - no external dependencies to run the test suite
Development
git clone git@github.com:celerp/celerp.git
cd celerp
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
celerp init # creates DB, runs migrations, starts servers
celerp init boots a bundled PostgreSQL when no server is running, so no sudo and no
system Postgres are required. To develop against your own server instead, pass
--db-url postgresql+asyncpg://….
Open http://localhost:8080. Run tests with pytest tests/.
See CONTRIBUTING.md for environment variables, troubleshooting, and coding guidelines.
Contributing
Issues and PRs welcome. The module system makes it straightforward to add new business domains without touching the kernel.
License
Free to download. Free to self-host. Free to build on.
Celerp is open-core:
- Source-available core engine under the Business Source License 1.1 - self-hosting permitted, contributions welcome.
- An MIT-licensed module ecosystem - the default business modules are MIT, so you can fork them, build your own modules, and ship them however you like. See LICENSING.md.
- A proprietary application + cloud layer (official UI, document/PDF output, and the cloud/AI services) that powers the hosted experience.
See LICENSING.md for the full map and TRADEMARK.md for use of the Celerp name. One restriction: don't resell Celerp itself as a competing product.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file celerp-2.1.0.tar.gz.
File metadata
- Download URL: celerp-2.1.0.tar.gz
- Upload date:
- Size: 2.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e24a29f9d4dacd07a999b7725a1f8b0e45bcc7ee8afa494a5e5a9a4c20c3b4c2
|
|
| MD5 |
6035cfdf8834a02c5e34141307bf7b3e
|
|
| BLAKE2b-256 |
e7fdf4ffe1e01c020fdab452ad97639d90e7857ff235e0c719966afc09820d7f
|
Provenance
The following attestation bundles were made for celerp-2.1.0.tar.gz:
Publisher:
publish.yml on celerp/celerp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celerp-2.1.0.tar.gz -
Subject digest:
e24a29f9d4dacd07a999b7725a1f8b0e45bcc7ee8afa494a5e5a9a4c20c3b4c2 - Sigstore transparency entry: 2389443790
- Sigstore integration time:
-
Permalink:
celerp/celerp@0e071f5b78b6bf6fdb0704b660b5c90f8105ce83 -
Branch / Tag:
refs/tags/v2.1.0 - Owner: https://github.com/celerp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0e071f5b78b6bf6fdb0704b660b5c90f8105ce83 -
Trigger Event:
push
-
Statement type:
File details
Details for the file celerp-2.1.0-py3-none-any.whl.
File metadata
- Download URL: celerp-2.1.0-py3-none-any.whl
- Upload date:
- Size: 2.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50dc81d0d63ffbab836afa4ee48188c54d55afddbf2e65b440086557cfa64e24
|
|
| MD5 |
3271ba0a103003fe01f59d0691cebaad
|
|
| BLAKE2b-256 |
881319f21113cf293246b1e606a9350a3b3b9d0e9ac6d94148f1e239ea3dc384
|
Provenance
The following attestation bundles were made for celerp-2.1.0-py3-none-any.whl:
Publisher:
publish.yml on celerp/celerp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celerp-2.1.0-py3-none-any.whl -
Subject digest:
50dc81d0d63ffbab836afa4ee48188c54d55afddbf2e65b440086557cfa64e24 - Sigstore transparency entry: 2389443867
- Sigstore integration time:
-
Permalink:
celerp/celerp@0e071f5b78b6bf6fdb0704b660b5c90f8105ce83 -
Branch / Tag:
refs/tags/v2.1.0 - Owner: https://github.com/celerp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0e071f5b78b6bf6fdb0704b660b5c90f8105ce83 -
Trigger Event:
push
-
Statement type: