Basically the project is divided into two ends, backend and frontend. The backend serves all the APIs calling, and the frontend serves purely the client end.
git clone https://github.com/eimihar/lkw-test
cd lkw-test
everything must be done in order
cd backend
to change to this dir
composer install
cp .env.example .env
- Create a database named
campus_db
- Update database credentials accordingly in
.env
php artisan key:generate
php artisan config:cache
php artisan migrate
to migrate the tablesphp artisan passport:install
php artisan db:seed
to seed a default oauth2 password grant for frontend app and an admin you can log in with
use this seeders to skip adding records
php artisan db:seed --class=CoursesSeeder
to seed a sample records for courses, semesters and subjectsphp artisan db:seed --class=StudentsSeeder
to seed a sample records of students of existing courses
From the root directory
cd backend
php artisan serve --port=8081
make sure it's served at port 8081
For the frontend app you can try the committed build without using the npm at all (if you've not installed one)
From the root directory of the project,
cd frontend/dist
php -S localhost:8080
- on the browser, type
http://localhost:8081
- login with
[email protected]
with password12345
- select any of the student emails when you're still logged into the admin
- logout, then login again with the student email with password
12345
- pdf reports
- validations for most of them
- so if you input a wrong password it'll not tell you unless you inspect element.
- frontend logged in routes auth check
- loaders for all over the places
- edit/delete students, course, semester, subject