EFLInventory V2 is a simple-to-use, web-based inventory and point-of-sale application written in PHP using Laravel framework. It uses MySQL as the data backend and has a Bootstrap 4 material-like user interface. It is designed to assist small-scale retail stores with keeping track of items and inventory, and generate reports based on inventory, purchases and sales.
- Manage products and product variations
- Manage product categories and sub-categories
- Stock products by batch. Enables proper handling of product expiry date, product price change, e.t.c.
- Record damaged products.
- Generate a range of purchase and sales reports
- Easily migrate from existing records (using a predefined Excel template)
- Track and record major user actions such as create, update and delete. When you have more than 1 staff selling and/or managing products, you might one day want to know who did what.
- Assign roles to users. Default available roles are "Manager" and "Employee". No much option for now. Future updates will allow custom roles and defining actions for such roles. You can also make a request if you really do need one and can't fix it on your own
- Stock and sell products using a barcode scanner
- Sell products from point-of-sale (POS) with good-looking UI and great options
- Print sales receipt for every POS sale
Migrate Screen (Migrate from previous records using a predefined MS Excel template)
- Easiest way to get started with this:
git clone https://github.com/chrisidakwo/eflinventory-v2.git
cd eflinventory-v2
- Run from command prompt
composer install
-
Copy
.env.example
to.env
. Update details to suit your server & DB setup. -
Generate application key using:
php artisan key:generate
-
To create database tables either run these two commands:
php artisan migrate
php artisan migrate:seed
or run the database.sql
script.
If you're gonna be running the SQL script, please ensure to look through it before running. It's not a harmful script, but just be sure.
The database.sql
file is located within the bootstrap
directory. In there you'll also find a config.app.php
file. Rename it to app.php
, update the necessary details and move it to the config
directory
Manager login details:
Username: chrisidakwo
Password: secret
Material Pro Admin Template is the UI theme used for this application.
js.printArea
plugin duplicates the receipt for printing.- Unhandled exceptions for migration using Excel spreadsheets.
- JS click function is not triggered on filtered products in POS (making it difficult to use search bar or barcode scanner).
- Code refactoring, tests, and bug fixing.
- Enhance sales receipt customisation. Businesses should be able to add logo, specify how the date and timestamp should appear, choose font, decide to display sales clerk's name, e.t.c.
- An option for frequent database backup (most likely as a cron job).
- Restructure app to allow for custom RBAC.
- Card online payment (Paystack, Stripe and/or any other).
- Provide better report generation options (with charts and graphs)
EFLInventory-V2 is an open-source software licensed under the GPU v3 License.