# Aureus ERP: Modular Open-Source ERP on Laravel 13

> Aureus ERP is an MIT-licensed enterprise resource planning platform built on Laravel 13, FilamentPHP 5, and Livewire 4. It targets small and medium enterprises that need a self-hosted ERP with a PHP-native stack and a plugin architecture that installs only the modules a business actually uses.

**aureuserp/aureuserp** — Free and Open Source ERP platform

- Repository: https://github.com/aureuserp/aureuserp
- Website: https://aureuserp.com
- Stars: 11,998 · Forks: 574
- Language: PHP
- License: MIT
- Published: 2026-09-21 · Updated: 2026-09-21 · Language: en
- Canonical page: https://hysenlabs.com/projects/aureuserp-aureuserp

## A PHP-Native ERP for Small and Medium Enterprises

Aureus ERP addresses the need for a self-hosted ERP that PHP developers can extend without learning a new framework. The README describes its target as SMEs and large-scale organizations, but the practical audience is narrower: teams already comfortable with Laravel, Filament, and Composer. Every module, every admin panel page, and every access control rule is wired to FilamentPHP 5 and Livewire 4. That means a developer who knows Laravel can read any plugin's source code and modify it directly.

The MIT license permits commercial use and modification without requiring operators to publish changes. That matters for businesses that want to adapt plugins to their internal workflows without contributing those adaptations back. The cloud hosting option at aureuserp.com is a paid managed service, but the self-hosted path incurs no ongoing licensing fees once the server requirements are met. Organizations evaluating open-source ERPs on cost grounds should factor in the developer time needed to maintain and update the installation, since there is no subscription support contract in the MIT tier.

Teams on Django, Rails, Spring, or any non-PHP stack face a substantial adoption cost. Aureus ERP is not a language-agnostic service with a REST API that any backend can call. It is a PHP application that must run on PHP 8.3+, and its admin interface is inseparable from the FilamentPHP framework. Choosing Aureus ERP commits the organization to maintaining PHP infrastructure alongside whatever other stacks are already running.

## Laravel 13, FilamentPHP 5, and the Livewire 4 Runtime

Laravel 13 handles routing, dependency injection, Eloquent ORM, queue workers, and database migrations. FilamentPHP 5 provides the admin panel shell: data tables, form builders, navigation panels, and the resource abstraction that turns Eloquent models into editable UI components. Livewire 4 handles reactive browser updates without requiring a separate JavaScript SPA framework, sending server-rendered HTML patches over WebSocket connections.

TailwindCSS 4 is the styling layer, compiled through Vite 5. The package.json lists tailwindcss 4.3.x and @tailwindcss/vite 4.3.x as dev dependencies, so every build requires Node.js 18+ to run the Vite pipeline.

The .env.example sets SESSION_DRIVER=database and CACHE_STORE=database as defaults. Both choices work without additional infrastructure but put session and cache state into the main database. Redis is present in the docker-compose.yml (image: redis:alpine, port 6379) and in the .env.example as REDIS_CLIENT=phpredis, but it is not the default driver. For installations under high concurrency, switching SESSION_DRIVER and CACHE_STORE to redis is a straightforward configuration change.

QUEUE_CONNECTION is also set to database by default. The Accounting and Manufacturing modules in particular generate background jobs for financial calculations and bill-of-materials processing. Database-backed queues process jobs serially and will become a bottleneck under heavy workloads. Switching to Redis queues requires changing QUEUE_CONNECTION=redis in .env and running a dedicated queue worker process, neither of which the install wizard configures automatically.

Mailpit handles transactional email in the docker-compose.yml development setup. Production deployments will need to configure MAIL_MAILER, MAIL_HOST, and the other mail variables in .env before any email notification or invoice delivery feature works.

## Installing Aureus ERP with Four Artisan Steps

The README gives a four-step install process. First, clone the repository and enter the project directory:

```bash
git clone https://github.com/aureuserp/aureuserp.git
cd aureuserp
```

Install PHP dependencies with Composer:

```bash
composer install
```

Run the install wizard. This single command runs all database migrations, seeds the initial data, generates roles and permissions through Filament Shield, creates the admin account, and sets up the environment configuration:

```bash
php artisan erp:install
```

Start the development server:

```bash
php artisan serve
```

The server starts on http://localhost:8000 by default. Log in with the admin credentials created during the erp:install step. Frontend assets are compiled by Vite, so the dev command in package.json (vite) must run separately if live CSS or JavaScript changes are needed during development.

For a Docker-based setup, the docker-compose.yml in the repository root defines containers for the PHP application (on Laravel Sail 8.4), MySQL 8.0, Redis, and Mailpit. The app container exposes port 80 (configurable via APP_PORT in .env) and port 5173 for Vite's HMR server. The docker-compose.yml does not run erp:install automatically; that step still needs to be run inside the container after the stack comes up.

## Core Plugins and Installable Business Modules

Aureus ERP separates its functionality into two plugin categories. Core plugins install by default and cannot be removed: Analytics (business intelligence and reporting), Chatter (internal communication), Fields (customizable data structures), Security (roles and permissions via Filament Shield), Support (help desk), and Table View (customizable data presentation). These six form the scaffolding that every other module depends on.

Installable plugins fall into four groups. Financial management includes Accounting, Accounts, Invoices, and Payments. Operations includes Inventories, Manufacturing (with Bill of Materials support), and related warehouse management tools. Human resources provides an Employees module and related HR functionality. Sales and CRM covers Contacts, CRM, Products, and Sales modules. A separate Projects module handles project management.

The design intent is incremental adoption: a business might start with Accounting and Contacts, then add Inventories as operations grow. Each plugin registers its own Filament panel resources and database migrations. Adding a plugin runs those migrations and adds the plugin's navigation entries to the admin panel.

The README does not document a procedure for removing an already-installed plugin. Once a module's migrations have run, the tables exist in the database. Removing the plugin's Composer dependency without handling the database state could leave orphaned tables or break foreign key constraints. This means planning the initial plugin selection carefully is more consequential than in systems that create all database tables regardless of active modules. Teams should test adding and removing plugins in a staging environment before committing to a production module set.

Plugin installation and removal are handled through Composer rather than through an in-app marketplace. The plugins/ directory in the repository root contains the included modules, and the composer.json in each plugin defines its own dependencies.

## Role-Based Access Control Through Filament Shield

Filament Shield is the permission layer. The php artisan erp:install command generates the initial set of permissions during setup. Shield maps each Filament resource (a model's admin panel representation) to a set of create, read, update, delete, and custom action permissions. Administrators can define roles that combine any subset of those permissions.

The .env.example contains no LDAP_HOST, SAML, or OAuth provider variables. The README documents no built-in single sign-on integration. If connecting Aureus ERP to an existing corporate directory (Active Directory, Okta, Azure AD) is a firm requirement, that work must be implemented as a custom Laravel authentication guard or a third-party Filament Shield extension. There is no documented configuration path for it in the README.

The Security core plugin handles authentication and guards the admin panel. Filament Shield generates a permission for every Filament resource page and action it finds at startup, so custom plugins get their permissions generated automatically when Filament Shield scans them. This means third-party or in-house plugins do not need separate permission registration code, but it also means permission bloat grows with the number of installed plugins, and large installations with many custom plugins will accumulate a large permission table.

## Where Aureus ERP Hits Its Limits

The tight coupling between Aureus ERP and the FilamentPHP version it ships with creates an upgrade dependency chain. When FilamentPHP releases a new major version, Aureus ERP needs to update all its plugin resources and form schemas to match. The release history shows v1.4.0 on 2026-05-13, v1.5.0 on 2026-08-04, and v1.6.0 on 2026-08-27. That cadence is active, but it also means teams must track upstream changes across three framework layers: Laravel, FilamentPHP, and Livewire.

The repository includes no published REST or GraphQL API layer for external integrations. If another system (a warehouse scanner, a point-of-sale terminal, a reporting tool) needs to read or write data from Aureus ERP programmatically, the only documented path is writing custom Laravel API routes within the application. There is no packaged integration API in the README.

The .env.example sets APP_CURRENCY=USD as the currency default. The README documents multi-language support but does not describe how to configure multi-currency or multi-company setups at the configuration level. Teams running multi-entity or multi-currency businesses should test those scenarios explicitly before committing.

The README also lists NativePHP configuration variables (NATIVEPHP_APP_ID, NATIVEPHP_START_URL) in the .env.example, suggesting there is or was a desktop barcode application feature. The README does not document this feature in its main sections, so its current completeness is not clear from the available documentation.

## Aureus ERP vs ERPNext: Stack Choice and Deployment Model

ERPNext is the most widely compared open-source ERP for organizations evaluating Aureus ERP. The key difference is not features but runtime. ERPNext runs on Python's Frappe Framework and requires its own bench CLI installer, Redis, MariaDB, Node.js, Python, and Frappe as coordinated dependencies. Aureus ERP runs as a standard Laravel PHP application: Composer installs PHP dependencies, php artisan erp:install runs the setup, and a standard web server (Apache 2.4+ or Nginx 1.18+) handles requests.

For PHP shops, that difference is substantial. A team that already runs Laravel applications will find Aureus ERP's stack familiar: the same .env file format, the same artisan command pattern, the same Composer-based dependency management. Adopting ERPNext on the same server would mean standing up a separate Python environment and learning the Frappe CLI.

ERPNext has a longer production history, a larger third-party app marketplace, and more extensive documentation on specific business workflows like multi-company accounting and supply chain. Aureus ERP's plugin ecosystem is newer and smaller. The trade-off is real: ERPNext has more built-in functionality documented in its official guides, but Aureus ERP is more natural to extend for a Laravel developer.

For organizations not already committed to PHP, ERPNext's maturity and module depth make it the safer choice. For organizations running PHP already, Aureus ERP avoids introducing a second language runtime and a second deployment model into the infrastructure.

## Conclusion

Aureus ERP is a good fit for PHP teams already running Laravel who want a self-hosted ERP without a commercial license fee. Teams on a non-PHP stack will find the framework dependency list steep. Before deploying, confirm your server has PHP 8.3+, MySQL 8.0+ (or MariaDB 10.6+ or PostgreSQL 16+), Node.js 18+, and Composer 2+. The last push was on 2026-09-22 and the latest release is v1.6.0 from 2026-08-27, so the project is in active development. If single sign-on with an external directory is a hard requirement, note that the README documents no built-in SSO configuration and that work requires custom implementation on top of the base install.

## FAQ

### How do you install Aureus ERP?

Clone the repository, run composer install, then run php artisan erp:install to execute migrations, seed initial data, generate permissions, and create an admin account. Start the development server with php artisan serve and log in at http://localhost:8000.

### How does Aureus ERP compare to ERPNext?

Aureus ERP is a Laravel PHP application installed via Composer, while ERPNext runs on Python's Frappe Framework with its own bench installer. PHP teams will find Aureus ERP's setup and extension model familiar; ERPNext has a larger existing module ecosystem and a longer production track record.

### What databases does Aureus ERP support?

The README lists MySQL 8.0+, MariaDB 10.6+, and PostgreSQL 16+ as supported databases. The default .env.example sets DB_CONNECTION to mysql.

## Sources

- [aureuserp/aureuserp on GitHub](https://github.com/aureuserp/aureuserp)
- [License: MIT](https://github.com/aureuserp/aureuserp/blob/master/LICENSE)
- [Project website](https://aureuserp.com)
- [README](https://github.com/aureuserp/aureuserp/blob/master/README.md)
- [Releases](https://github.com/aureuserp/aureuserp/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/aureuserp-aureuserp
