Open source ERP built with Laravel and Livewire.
Feature | Description |
---|---|
Product | Create products from admin panel. This product can be added to invoices as well as displayed in the website. |
Product Category | Arrange products by product categories. |
Invoicing | Create and manage sale invoice, purchase and expense entries. |
Website Management (CMS) | Create and manage webpage and blog post entries. |
Calendar | Create and manage calendar events. |
Team | Create and manage teams. |
Contact Message | View contact messages sent by website visitors |
Appointment | Get appointment request from website visitors. Approve or reject from admin panel. |
Newsletter subscription | Get newsletter subscription request from website visitors. |
Task Manager | Create and manage tasks. |
It is just another laravel application. So we do all the steps required to get a laravel application working.
Below applications must be installed in the system.
php >= 8.2
mysql >= 8.0
composer
npm
Perform below steps to get the application running.
First create a mysql database. Then grant access to the mysql user.
Lets assume you created database named demo_database
and you granted
access to mysql user demo_user
. You will need this info to enter
in the .env file later.
Clone the repository.
$ git clone https://github.com/oitcode/samarium.git
Go to the directory.
$ cd samarium
Copy env.example file to .env file
$ cp env.example .env
Now, enter database name, mysql username and mysql password in the .env file. Your .env file's database part should be like this.
DB_DATABASE=demo_database
DB_USERNAME=demo_user
DB_PASSWORD='demo_password'
Please replace demo_database
, demo_user
and demo_password
with real
database name, username and password.
Install composer dependencies.
$ composer install
Install npm dependencies.
$ npm install
Compile front end assets.
$ npm run dev
Run database migrations.
$ php artisan migrate
Generate key.
$ php artisan key:generate
Create storage links.
$ php artisan storage:link
If you do not want to perform all the installation steps manually, then there is a bash script provided that will run all the required steps.
Please run below bash script.
bash app-install.sh
To use the dashboard, you need a username and password. Use below seeder file to create first user. This will create an admin user. After that you can create other users from dashboard.
php artisan db:seed --class=UserSeeder
php artisan serve
Now open your web browser and visit
127.0.0.1:8000
to see the website127.0.0.1:8000/dashboard
to see the dashboard
Below are some screenshots.
Please check app/config.php
file to see different configuration options
for the application. Below are some configuration options you may want to
change.
File: app/config.php
Configurable option: App menu color options
'app_menu_dropdown_button_text_color' => 'text-white',
'app_menu_normal_button_text_color' => 'text-white',
'app_menu_bg_color' => 'bg-dark',
Please consider contributing to this project. Any kind of contributions are welcome. You can contribute in following ways:
You can raise issues for existing bugs. Or you can raise issue for requesting new features.
More test code is needed to automate as much test as possible. You can add more test code.
You can fix issues that are raised here in github repo.
You can add your own code to extend the features of this application. Or, if you can see the need for refactoring certain part of code then also, please send a pull request by making necessary code changes.
All contributions are welcome.
If you find any issue in this application, you can help by raising an issue here in our github repo.
Different countries have different laws for using invoicing system. Although you can use this system to generate invoice for learning/experiment, please check with your local law before using this system to generate invoice commercially.
Please star this repository to show your support if you find this project useful and/or interesting.