Skip to content
← Back to projects

Quizapp

The skeleton application for the Laravel framework.

#About QuizApp

A fully functional quiz application developed on TALL stack and filamentphp3. The development was part of my self-learning to understand web application secure design principles.

I enhanced my knowledge related to overall application security, identification, authentication, authorization, audit and session management best practices and principles.

I explored the importance of input sanitization and validation best practices, and the built-in functionality TALL stack provides to implement these foundational security controls.

An interesting part was encryption of fields, files and sessions with keys that Laravel provides.

This project gave me a deep understanding of what to look for in web applications during design, implementation and maintenance.

#Setup

#Clone the master repo

git clone <repo>
cd <repo>
alias sail=./vendor/bin/sail

#Execute initial setup and seeding.

cp .env.example .env

composer install

sail up -d

sail npm install

sail npm run build

sail artisan migrate:fresh

sail artisan make:filament-user

sail artisan db:seed

sail artisan shield:super-admin

sail artisan db:seed --class ShieldSeeder


sail npm run dev #should be kept open if using local dev env

#Loing to admin:

http://localhost/admin/

#Login to user:

http://localhost/member/

  • Edit the admin user and set is_admin to yes on edit form and save -- this will enable switching between user and admin roles for admin from profile menu:

Screenshot from 2024-02-24 20-17-47

Screenshot from 2024-02-24 20-18-36

#Create a test user from admin and assign user role #Login as test user and i) Subscribe to the certification under subscription menu and then the subscribed quiz certificaitons will appear in the quiz drop down for selection.

#Screenshots

Admin Dashboard

Screenshot from 2024-02-24 19-02-12

Sections Administration: Screenshot from 2024-02-24 19-03-07

User Dashboard: Screenshot from 2024-02-24 19-07-25

Subscription Page: #This could be bootstraped with some subscription for enabling payment and premium services for members with some additional improvements: Screenshot from 2024-02-24 20-21-31

Quiz Selection:

Quiz In-Progress: Screenshot from 2024-02-24 19-05-31

Quiz Result Review: Screenshot from 2024-02-24 19-07-01

Quiz Overview Page: Screenshot from 2024-02-24 19-07-37

#Code of Conduct

In order to ensure that the Laravel community is welcoming to all, please review and abide by the Code of Conduct.

#Security Vulnerabilities

If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via taylor@laravel.com. All security vulnerabilities will be promptly addressed.

#License

The app is open-sourced software licensed under the MIT license.

New version available.