CRM
An open-source CRM for Italian small businesses: contacts, companies, leads, quotes, orders, invoices with VAT, tickets, email campaigns, NPS surveys, reports and a customer portal. It started as a way to manage clients for a friend’s startup and became a working and valuable project.
TRY IT (no install)
https://crm.alessio.hackclub.app
email: demo@northleap.it
password: HackClub-Demo-2026!
The demo has full access and realistic fake data, so feel free to click everything, create, edit and delete. The data resets occasionally. Outgoing email is switched off on the demo.
HEADS UP: the interface is in Italian. Use the translate widget in the corner of the app (or your browser’s translator) to read it in English. Real i18n is on my roadmap, sorry!
WHAT TO LOOK AT
- A quote with line items, discounts and VAT by rate, and the “Print PDF” button. PDFs come from HTML templates you can edit, with a live preview on your last real document.
- A customer accepting a quote from a signed link, without an account.
- Full-text search across every module (PostgreSQL).
- Italian e-invoicing: it builds the FatturaPA XML and validates it against the official government XSD before saving. Invoices lock once sent to the SDI.
- The MCP server: an AI assistant can use the CRM through an API key, with seven generic tools that work on all 34 modules and respect permissions.
- 2FA (TOTP) with recovery codes, secrets encrypted at rest, installable PWA.
HOW IT WORKS
There is no “contacts” or “companies” table. One generic Record entity stores its fields in a jsonb column, and an ObjectType + FieldDef describe each module (39 field types). Adding a module is a configuration record, not a migration or a new controller. Permissions are checked per module and action at runtime.
You can have more info in the README, so please check it.
I hope you appreciate this project :)
- 16 devlogs
- 115h