team-nifty-gmbh/flux-erp
| Install | |
|---|---|
composer require team-nifty-gmbh/flux-erp |
|
| Latest Version: | v1.10.3 |
| PHP: | ^8.4 |
| License: | MIT |
| Last Updated: | Oct 2, 2026 |
| Links: | GitHub · Packagist |
Flux ERP
Flux ERP is a modern, open-source ERP built on Laravel and Livewire. It ships as a Composer package that you install into a Laravel application.
[!IMPORTANT] Flux is a package, not a standalone app. That is why this repository has no
artisanfile and nobootstrap/app.php— those belong to the Laravel host application. You cannot runphp artisan …inside this repository directly. Install it into a fresh Laravel app as shown below.
Requirements
- PHP 8.4 (
bcmath,intl,json,pdo,zip) - MySQL 8 / MariaDB
- Meilisearch — search (Laravel Scout)
- Composer 2
No Node.js or frontend build is needed on the project side. Flux serves its compiled assets straight from the package at runtime.
Installation
# 1. Create a fresh Laravel app
composer create-project laravel/laravel flux-app
cd flux-app
# 2. Require Flux (service provider, migrations, routes and assets auto-register)
composer require team-nifty-gmbh/flux-erp
# 3. Require the license package (provides the install wizard)
composer require team-nifty-gmbh/flux-license
# 4. Run the interactive install wizard
php artisan flux:install
# 5. Link storage for uploaded media
php artisan storage:link
Configure your database, Meilisearch and mail credentials in .env before running the
wizard, and remove the default welcome route from routes/web.php (Flux registers its
own).
The php artisan flux:install wizard guides you through the remaining setup
(migrations, roles and permissions, base data, payment types, and so on). If you
prefer to run the steps manually instead, use php artisan migrate and
php artisan init:permissions.
Seeding base data
Add the seeder to database/seeders/DatabaseSeeder.php:
$this->call(\FluxErp\Database\Seeders\FluxSeeder::class);
then run php artisan db:seed.
Serve the app with php artisan serve (or Sail) and log in.
Frontend assets
Assets are compiled inside the package and served through its own /flux/… routes.
The @fluxStyles and @fluxScripts Blade directives inject them — add these to your
<head> and before </body> only if you use a custom layout instead of the shipped
one. Nothing to build or publish.
Realtime (Laravel Reverb)
Flux uses Laravel Reverb for realtime features.
Broadcasting credentials are read from .env at runtime, so no rebuild is required
when they change.
php artisan reverb:start
REVERB_APP_ID=local
REVERB_APP_KEY=local
REVERB_APP_SECRET=local
REVERB_HOST=your.domain.com
REVERB_SCHEME=https
REVERB_PORT=443
In production run Reverb behind your web server as a reverse proxy so websocket traffic reaches it on port 443.
Publishing package resources (optional)
Only needed to override defaults:
| Tag | Publishes |
|---|---|
flux-config |
config/flux.php |
flux-views |
Blade views into resources/views/vendor/flux |
flux-translations |
Language files |
flux-migrations |
Migrations into database/migrations |
flux-seeders |
Seeders into database/seeders |
flux-docker |
Docker/Sail setup |
php artisan vendor:publish --tag=flux-config
Development
Flux publishes a Docker/Sail setup that runs nginx instead of artisan serve:
php artisan vendor:publish --tag=flux-docker
Run the package test suite (uses Testbench) from the package directory:
composer install
composer test
The test suite needs MySQL 8 or MariaDB as well. phpunit.xml pins DB_CONNECTION=mysql,
so the requirement above is not only about production. A local .env pointing at SQLite
aborts on the first migration that uses raw MySQL, before a single test has run. That abort
is not a failing test, it means the test database points at the wrong driver.
Give every session its own database. Parallel runs against one shared schema pull each
other's tables away through RefreshDatabase, which shows up as
Table 'testing.migrations' doesn't exist in the middle of a run:
mysql -e "CREATE DATABASE IF NOT EXISTS testing_mine;"
DB_DATABASE=testing_mine ./vendor/bin/testbench package:test
Documentation
Guides for extending Flux live in docs:
routes, views, widgets,
print views, monitorable jobs,
backend customization.
License
Flux ERP is open-sourced software licensed under the MIT license.
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v1.10.3 | ^8.4 | ^13.23 | MIT | |
| v1.10.2 | ^8.4 | ^13.23 | MIT | |
| v1.10.1 | ^8.4 | ^13.23 | MIT | |
| v1.10.0 | ^8.4 | ^13.23 | MIT | |
| v1.9.13 | ^8.4 | ^13.23 | MIT | |
| v1.9.12 | ^8.4 | ^13.23 | MIT | |
| v1.9.11 | ^8.4 | ^13.23 | MIT | |
| v1.9.10 | ^8.4 | ^13.23 | MIT | |
| v1.9.9 | ^8.4 | ^13.23 | MIT | |
| v1.9.8 | ^8.4 | ^13.23 | MIT | |
| v1.9.7 | ^8.4 | ^13.23 | MIT | |
| v1.9.6 | ^8.4 | ^13.23 | MIT | |
| v1.9.5 | ^8.4 | ^13.23 | MIT | |
| v1.9.4 | ^8.4 | ^13.23 | MIT | |
| v1.9.3 | ^8.4 | ^13.23 | MIT | |
| v1.9.2 | ^8.4 | ^13.23 | MIT | |
| v1.9.1 | ^8.4 | ^13.23 | MIT | |
| v1.9.0 | ^8.4 | ^13.23 | MIT | |
| v1.8.1 | ^8.4 | ^13.23 | MIT | |
| v1.8.0 | ^8.4 | ^13.23 | MIT | |
| v1.7.2 | ^8.4 | ^13.23 | MIT | |
| v1.7.1 | ^8.4 | ^13.23 | MIT | |
| v1.7.0 | ^8.4 | ^13.0 | MIT | |
| v1.6.0 | ^8.4 | ^13.0 | MIT | |
| v1.5.0 | ^8.4 | ^13.0 | MIT | |
| v1.4.9 | ^8.4 | ^13.0 | MIT | |
| v1.4.8 | ^8.4 | ^13.0 | MIT | |
| v1.4.7 | ^8.4 | ^13.0 | MIT | |
| v1.4.5 | ^8.4 | ^13.0 | MIT | |
| v1.4.4 | ^8.4 | ^13.0 | MIT |
Showing the latest 30 of 94. See every release on Packagist