Open-source project
idurar/idurar-erp-crm avatar
idurar/idurar-erp-crm

IDURAR ERP CRM: a MERN-stack invoicing suite you host yourself

Free Open Source ERP CRM Software Accounting Invoicing | Node.Js React

8,838 stars3,142 forksJavaScriptAGPL-3.0

At a glance

What is it?
IDURAR is an AGPL-3.0 ERP and CRM built on Node.js, Express, MongoDB and React, with invoice, payment, quote and customer modules. It installs from a nine-step guide against a MongoDB cluster, and its commercial story is the cloud version rather than a paid licence.
Who is it for?
IDURAR fits a small team that wants invoice, quote, payment and customer records in one self-hosted app and is comfortable with Node.js, Express, MongoDB and React. It does not fit anyone who needs payroll, inventory or HR out of the box: the README's feature list stops at the four business documents, whatever the description line promises.
Can I use it commercially?
Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
Is it still maintained?
Yes. The repository last received commits 47 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What IDURAR solves, and for whom

Small companies usually run invoicing in one tool, customer notes in another, and quotes in a spreadsheet. IDURAR puts those records in a single self-hosted application. The README lists four modules: invoice management, payment management, quote management and customer management. That is the whole advertised scope. The repository description line mentions "Accounting Invoicing" and a later README paragraph calls the project "Invoice / Inventory / Accounting / HR", but the feature list itself does not describe inventory, payroll or HR screens, so treat those words as aspiration rather than delivered functionality.

The target user is a developer or a small agency that already runs Node.js and MongoDB and wants the business data on its own infrastructure. The README states plainly that IDURAR can be used free for personal or commercial use, and it points to a separate self-hosted enterprise version at cloud.idurarapp.com. That split matters: the open repository is the product, and the hosted offering is where the maintainer expects to earn.

The MERN architecture behind the invoice and quote modules

IDURAR is a two-process application. The top level of the repository holds a backend/ directory and a frontend/ directory, which matches the MERN description in the README: Node.js and Express on the server, MongoDB for storage, React with Ant Design and Redux in the browser. The two halves are installed and started separately, and the installation guide numbers them as separate steps, backend dependencies before frontend dependencies.

Configuration is environment-based. The installation instructions devote a step to editing the environment file and a following step to updating the MongoDB URI, which means the backend expects a connection string rather than a local database it provisions itself. You are asked to create a MongoDB account and database cluster before any code runs. There is no bundled database container in the repository layout, and the README does not describe a docker-compose file, so the default path assumes a hosted cluster.

A setup script sits between dependency installation and server start. Its content is not reproduced in the README, so what it seeds (an initial user, default settings, or nothing at all) cannot be confirmed from the documentation. That is the single biggest unknown in the install path.

Installing IDURAR and running the two servers

The README does not inline the commands. It links each step to a section of INSTALLATION-INSTRUCTIONS.md, so that guide is the source of truth and the commands below are the ones it documents, in the order it documents them. Start by cloning the repository and creating a MongoDB account and cluster.

bash
git clone https://github.com/idurar/idurar-erp-crm.git
cd idurar-erp-crm

Next, edit the environment file and set the MongoDB URI to the connection string from your cluster. The guide treats these as two separate steps, so expect a template file to copy before editing it.

bash
cd backend
npm install
npm run setup
npm run dev

The setup script runs once, after backend dependencies are installed and before the server starts. What it prints is not documented in the README, so watch the terminal output rather than assuming a particular result. Then start the frontend in a second shell.

bash
cd frontend
npm install
npm run dev

Two processes now run at once: the Express API and the React dev server. The README does not state which ports either one binds to, so read the console output from each command instead of guessing a URL. A first real use is to open the frontend, create a customer record, then create a quote against that customer and convert it into an invoice through the invoice module.

Where IDURAR is the wrong tool

The strongest objection is scope. If you need inventory movements, purchase orders, payroll or a general ledger with double-entry postings, the README's feature list does not offer them. The word "Accounting" appears in the title and description, but the enumerated features are invoices, payments, quotes and customers. A finance team that expects account balances and journal entries will be disappointed by what the repository actually documents.

The second objection is operational. IDURAR is two long-running Node processes plus an external MongoDB cluster. There is no deployment documentation in the README beyond the development commands, no described reverse proxy configuration, and no rollback procedure. If you cannot run a Node.js service in production and manage a MongoDB cluster, the install steps will get you to a working development environment and stop there.

The third is licence fit. AGPL-3.0 is a strong copyleft licence. If your plan is to take the code, modify it and offer it to customers as a hosted service without publishing your changes, the licence text is the thing to read before you write any code, and this article cannot tell you what your obligations are.

How IDURAR differs from Odoo and ERPNext

The natural comparison is with Odoo and ERPNext, the two long-running open source ERP suites. The difference is not features, it is the stack and the surface area. Odoo and ERPNext are Python applications with module systems that cover accounting, inventory, manufacturing, HR and more, and they ship their own database setup and upgrade tooling. IDURAR is a JavaScript application with four documented modules and no module marketplace.

That makes the choice fairly clean. If your team writes JavaScript and wants to read and modify the code that handles invoices and quotes, IDURAR's Express and React layout is a smaller thing to learn than a Python ERP framework with its own ORM and view layer. If you need breadth, IDURAR has less to offer, and installing Odoo or ERPNext buys you modules that IDURAR simply does not document.

A second axis is the commercial model. Odoo and ERPNext both have large ecosystems of paid apps and partners. IDURAR's README points to a single hosted enterprise version, which suggests a smaller support surface and fewer third-party integrations to rely on.

Maintenance cadence, releases and the AGPL-3.0 licence

The repository is not archived, and the last push was on 2026-08-14, roughly five weeks before this writing, so the codebase is being touched. Release history is less even. Version 4.1.1 was published on 2026-03-16, version 4.1.0 on 2024-09-29, and version 2.1.0 on 2023-10-31. The gap between 4.1.0 and 4.1.1 is about eighteen months, and the jump from 2.1.0 to 4.1.0 is a major-version step with no 3.x release listed. If you pin to a tagged release, expect long intervals between tags and plan to track the master branch if you need recent fixes. The README points contributors at CONTRIBUTING.md and lists maintainer contacts in MAINTAINERS.md.

On licensing: the README states the project is released under the GNU Affero General Public License v3.0, and the repository contains a LICENSE file. AGPL-3.0 reaches network use, so running a modified IDURAR as a service for other people is the scenario where the licence terms start to matter. Upgrades are the other cost. With no documented migration path between major versions and no rollback instructions, moving from 2.x to 4.x is not something the documentation describes, and you should treat your MongoDB data as the thing to back up before attempting it.

Editorial conclusion

IDURAR fits a small team that wants invoice, quote, payment and customer records in one self-hosted app and is comfortable with Node.js, Express, MongoDB and React. It does not fit anyone who needs payroll, inventory or HR out of the box: the README's feature list stops at the four business documents, whatever the description line promises. Before adopting it, read INSTALLATION-INSTRUCTIONS.md end to end and confirm what the setup script creates in your own MongoDB cluster, because the README does not document rollback and the AGPL-3.0 licence applies to the whole application, not just the backend.

Frequently asked questions

What is IDURAR ERP CRM?

It is an open source ERP and CRM application for invoices, payments, quotes and customers, built on Node.js, Express, MongoDB and React with Ant Design and Redux. The README describes it as simple to use and released under AGPL-3.0.

Can IDURAR ERP CRM be integrated with other systems?

The README does not describe an integration layer, webhooks or a public API, so any integration would have to be built against the Express backend in the backend/ directory. The documented modules are invoices, payments, quotes and customers.

How do I install IDURAR ERP CRM?

The README links to INSTALLATION-INSTRUCTIONS.md, which walks through cloning the repository, creating a MongoDB cluster, editing the environment file, updating the MongoDB URI, installing backend dependencies, running the setup script, starting the backend, then installing frontend dependencies and starting the frontend.

Can I use IDURAR ERP CRM for commercial use?

Yes. The README states that IDURAR can be used free for personal or commercial use. The code is released under AGPL-3.0, and a separate self-hosted enterprise version is offered at cloud.idurarapp.com.

Is there a Docker setup for IDURAR ERP CRM?

The README and the installation steps it links to describe cloning the repository, running npm install and npm run setup in backend/, and npm run dev in frontend/. No Docker or docker-compose instructions appear in the README.

Official sources

  1. idurar/idurar-erp-crm on GitHub
  2. License: AGPL-3.0
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/idurar-idurar-erp-crm.svg)](https://hysenlabs.com/projects/idurar-idurar-erp-crm)