Inventory Management System with invoices, picklists, and sales reporting.
Source: https://github.com/bitsandbots/inventory
PHP 8.x + MariaDB application targeting self-hosted deployment on Raspberry Pi or any Apache + MySQL host. Offline-first (no CDN dependencies). Three-role access control: Admin / Supervisor / User.
bash install.shThe installer detects PHP, MySQL, and Apache, creates the database from schema.sql, generates a .env with a strong APP_SECRET, creates a least-privilege MySQL app user, and wires up an Apache vhost on port 8080.
To wipe an existing deployment and reinstall fresh:
bash install.sh --reinstallFor manual install, troubleshooting, role-based workflows, and daily operations, see docs/setup-and-usage.md.
To run php -l on staged PHP files before each commit (same check CI runs):
bash scripts/install-hooks.shThis points core.hooksPath at the tracked .githooks/ directory. Bypass with git commit --no-verify if you need to commit despite a parse error.
Default passwords are seeded into schema.sql and must be changed on first login.
| Role | Username | Password |
|---|---|---|
| Admin | admin |
admin |
| Supervisor | special |
special |
| User | user |
user |
| Document | Audience |
|---|---|
| Setup & Usage | Operators — install, daily workflows, troubleshooting |
| Architecture | Developers — directory map, request lifecycle, RBAC model, schema |
| Tech Stack | Developers — runtime versions, security features, deployment target |
| API & Components | Developers — class methods, query helpers, CSRF helpers |
| Gap Analysis | Maintainers — known issues, recent fixes, next steps |
A standalone single-file offline reference: Blueprint_Overview.html
Originally created by Siamon Hasan (2018-2020) using PHP, MySQL, and Bootstrap.
Enhanced by Cory J. Potter / CoreConduit Consulting Services. v2.0 — 2026: security hardening (bcrypt, prepared statements, CSRF on all forms and state-changing GETs, session-fixation prevention, output escaping); installer redesign with --reinstall flag; Apache vhost automation; least-privilege DB user provisioning.