Skip to content

Releases

NERP 1.1.0

Choose a tag to compare

@shivshankardayal shivshankardayal released this 13 Nov 02:22

NERP 1.1.0 makes the server's database code safer and fixes building on Ubuntu. There are no new features and no database changes beyond 1.0.0.

Queries checked at compile time

About 2,750 of the server's database queries are now checked by sqlx against the real database schema while NERP is compiled. A misspelt table or column, a wrong parameter type or a result read into the wrong type now stops the build instead of failing in production. The queries assembled while NERP runs (search filters, user-defined fields) are covered by the test suites, as before.

This changes how NERP is built. The database named in backend/.env (DATABASE_URL) must be migrated before compiling, using the new nerp-migrate program:

cd backend
cargo run --release --bin nerp-migrate     # creates or updates the tables
cargo build --release                      # -> backend/target/release/nerp

nerp-migrate builds without a database. The server still applies any pending migrations when it starts, as before.

Fixes

  • NERP builds again on Ubuntu 24.04 and other systems with xmlsec 1.2. The workaround for xmlsec 1.3.13 in 1.0.0 broke the SAML sign-on bindings there.
  • The test workflow now runs Collabora, so the office-editing suites run in CI instead of skipping.
  • Two end-to-end tests no longer fail on Fridays or because of database row order.

Upgrading from 1.0.0

cd /opt/nerp
sudo systemctl start nerp-backup.service          # a fresh backup first
sudo -u nerp git pull
sudo -u nerp bash -c 'cd frontend && npm ci && npm run build'
sudo -u nerp bash -lc 'cd backend && ~/.cargo/bin/cargo run --release --bin nerp-migrate'
sudo -u nerp bash -lc 'cd backend && ~/.cargo/bin/cargo build --release'
sudo systemctl restart nerp

The machine that builds NERP needs to reach its PostgreSQL database while compiling. See SETUP.md.

NERP 1.0.0

Choose a tag to compare

@shivshankardayal shivshankardayal released this 12 Nov 10:18

NERP 1.0.0 is the first release: a complete, self-hosted business suite for one company per installation. It is free software under the GNU GPL v3 — no licence fees, no per-user prices, and your data stays wherever you choose to keep it. See rationale.md for why NERP exists and why it is built this way, and SETUP.md to install it.

What's in it

  • CRM: leads, deals, contacts, companies, quotes, invoices, orders and your own record types; pipelines and stages, robots and triggers with a preview of how often they would have run, business processes, documents and e-signatures, email with connected mailboxes, web forms, duplicates caught while typing, imports from other CRMs, a client's whole history across modules, and a client portal with one sign-in link.
  • Sales intelligence: deal health with reasons, next steps that worked in your own won deals, silent-client alerts, a daily "needs attention" summary, true profit per client, deal, product and salesperson, a cash forecast, a promise checker for delivery dates, traffic analysis by channel, source, campaign and landing page, and commissions from paid invoices with clawback on credit notes.
  • Accounting: double-entry books, invoices, bills, payments, credit notes, bank statements, taxes, reports and inventory with FIFO or average costing.
  • Collaboration: tasks and projects (Scrum, flows, automation), workgroups, cross-functional teams, messenger and video calls, calendar with CalDAV and outside sync, drive with office editing (Collabora) — attachments in tasks, chats and posts too — knowledge base, whiteboards, news feed, meetings and lists.
  • HR: work time and check-in, absences, shift rota, work reports, HR documents with signing, skills, capacity-aware assignment of work, and field-visit planning.
  • Customers: booking inside the CRM, help desk, live chat, websites and an online shop, marketing campaigns.
  • BI: dashboards over NERP's data, CSV files, URLs and outside PostgreSQL databases.
  • Administration and trust: roles and permissions, single sign-on (LDAP, SAML, OpenID Connect and social providers), two-factor sign-in, encrypted file storage, a tamper-evident audit trail, a full company export in open formats, personal data requests (access and erasure), retention rules, backups with point-in-time restore, a health and self-test page with alerts, and an anonymised sandbox for trying changes safely.

Built with

Rust (Axum, sqlx, Tokio) as one server binary with its migrations built in, PostgreSQL 18 as the only database, Redis as a cache, and SvelteKit with Svelte 5 for the web app. Every feature ships with API and browser tests against a real server and database, and the security suite runs tens of thousands of checks against every route.

Not in this release

  • Mobile and desktop apps (they will live in their own repositories; NERP already has the server side they need).
  • SMS and messenger delivery, telephony, card payments and AI features — these wait for a provider choice.
  • MySQL (NERP uses PostgreSQL only, by design) and an app market.

Upgrading

This is the first release. Installations from the development branch upgrade by deploying this version: migrations run on start.