Current Version: v0.2.0
- Laravel 8 as backend framework.
- MySQL as database.
- Redis for cache & queue.
- PHPUnit for Testing.
- Bootstrap 5 for Frontend.
- VueJS and Axios in Quiz Attempt Page.
- Laravel Horizon
- Laravel Debugbar
- Laravel Valet for local development.
- Laravel Settings by Me
- Predis for redis connection.
- Sentry for error tracking.
- Faker for generating fake data in testing.
- PSR-4 Autoloading Standard.
- PSR-2 Coding Standard.
- PHP 7.3 minimum
- Composer
- MySQL or MariaDB
- NodeJS
- If you want to update the style or javascript, you need to recompile.
- PCNTL PHP Extension.
php -r "file_exists('.env') || copy('.env.example', '.env');"
php artisan key:generate
Edit .env
file and update the values related to mysql config and site settings.
composer install
(skip this step if you do not want to update style and javascript)
npm install
php artisan migrate
php artisan site:install
Follow the steps shown in your terminal and complete the installation process.
You can send digest email to authors manually by running below command.
php artisan send:author-digest
However, the author digest has been scheduled to be run in 10 AM every day. You need to run the scheduler using crontab.
php artisan schedule:run
The digest will be processed in background. You need to run Horizon
in background for the best service. However, you can switch to database or simple redis based queue processing also.
php artisan horizon
Alternatively, for simple redis
or database
based queue processing, run-
php artisan queue:work
For switching to database
based queue system, you need to update below ENV variables-
QUEUE_CONNECTION=database
For switching from queue system to instant processing, you need to update below ENV variables-
QUEUE_CONNECTION=sync