๐Ÿ“ฆ waynehamadi / laravel-base

โ˜… 0 stars โ‘‚ 0 forks ๐Ÿ‘ 0 watching
๐Ÿ“ฅ Clone https://github.com/waynehamadi/laravel-base.git
HTTPS git clone https://github.com/waynehamadi/laravel-base.git
SSH git clone git@github.com:waynehamadi/laravel-base.git
CLI gh repo clone waynehamadi/laravel-base
Merwane Hamadi Merwane Hamadi Merge pull request #5 from MerwaneHAMADI/5/make-role-fillable 1c6202f 5 years ago ๐Ÿ“ History
๐Ÿ“‚ master View all commits โ†’
๐Ÿ“ app
๐Ÿ“ bootstrap
๐Ÿ“ config
๐Ÿ“ database
๐Ÿ“ docker
๐Ÿ“ public
๐Ÿ“ resources
๐Ÿ“ routes
๐Ÿ“ storage
๐Ÿ“ tests
๐Ÿ“„ .editorconfig
๐Ÿ“„ .env
๐Ÿ“„ .env-dev
๐Ÿ“„ .gitattributes
๐Ÿ“„ .gitignore
๐Ÿ“„ .styleci.yml
๐Ÿ“„ artisan
๐Ÿ“„ CHANGELOG.md
๐Ÿ“„ composer.json
๐Ÿ“„ composer.lock
๐Ÿ“„ docker-compose.yml
๐Ÿ“„ package.json
๐Ÿ“„ phpunit.xml
๐Ÿ“„ readme.md
๐Ÿ“„ server.php
๐Ÿ“„ webpack.mix.js
๐Ÿ“„ README.md

Setup =======

Clone the project and go to the root.

To build the Application and it's containers, in your terminal go to the root directory and run:

docker-compose up

docker-compose exec app composer install

Migrate :

docker-compose exec app php artisan migrate

Seed :

docker-compose exec app php artisan db:seed

Requirements =======

1- Download or clone the repository from https://github.com/govzilla/laravel-base. Follow the readme.md file to get your instance running. DONE

2- Once you have a working version of Laravel, you will be required to create a laravel database migration based on the provided Employee csv (link below). Look at the laravel documentation on https://laravel.com/ to understand database migrations and how to create one. DONE

3- Create a database seeder class which reads/parses the csv file to populate the database table you created from the migration above. To look at the database, go to http://127.0.0.1 and click on login to login as a standard user with those logins : user : jonathan@user.com password : govzilla You will see the dashboard. Then click on Employees and verify that the seed worked.

4-Next, define some form of user management. A good baseline is to start with the laravel authentication mechanisms (ref https://laravel.com/docs/6.x/authentication). The only users you need concern yourself with are standard users and admins.DONE

5-Create a menu and view to show the employee data form the database above in a table as a list of names (first name and last name columns sorted ascending by last name).DONE

6-Create a view that displays the detailed employee data when clicking on a row (or first name or last name) in the view above. Just navigate on the app and verify if everything is correct

Create an Admin view (or set of views) to perform CRUD operations to manipulate the employee data in the database.

Log out and use those logins

user : jonathan@admin.com

password : govzilla

Verify that you can perform all the crud operations on Employees

BONUS

I implemented a way for admin to create users. Verify that : A regular user can't create an admin user ( he would then be able to perform update and delete operations, we don't want that) An admin user can read/update/create/delete admins, users and employees.