BingHR
A simple crud Web app built with Vue 3 and Laravel 8 to complete the BingHR Assesment.
I used Vue instead of the required jQuery because its the data driven approve to reactivity like other mordern Javascript Frameworks.
The main entity is Users
The web app allows you:
- Add Users
- Update Users
- and Delete Users
- Users have roles which are a Job titles
- Users also have Permissions, which in turn has actions (rights)
Installation
- Clone Project by running
git clone [email protected]:seewhy17/BingHR.git
orgit clone https://github.com/seewhy17/BingHR.git
- Change into the directory
cd BingHR
- run
composer install
- create an
.env
file in the root directory and copy the contents of.env.example
into it, alternatively runcp .env.example .env
from your CLI - change all DB_~ configurations in the newly created .env file to the required values for your machine
- Create a database with the value of
DB_DATABASE
environment variable(.env) as its name. - run
php artisan migrate:fresh --seed
in you CLI to seed the database with sample users, roles and permissions - (Optional) Use
BingHR
directory as the DocumentRoot of the virtual host(http://binghr.test) - run
npm install
to intall all javascript dependencies. - run
php artisan key:generate
to generate an encryption key for the application - run
npm run dev
to compile all assets. - run
php artisan serve
to start the application.
Final Notes
- The hamburger(menu) icon in the bottom-left expands or collapses the menu
- The permission rights at the bottom each modal are submitted as soon as the check boxes are checked or unchecked, the submit button submits the form above it.
- The permissions and association rights are also global(permission rights are shared across all users).