Extra is a project that is used to demonstrate how to use Laravel to build a web application. It belongs to the course MWA2 at Harbour.Space University. The lecturer is Nico Deblauwe.
The project is a simple application for sending invoices to customers.
The project is built using the TALL stack, more specifically Laravel 10 for the backend, with Tailwind CSS and Alpine.js for the frontend.
Tooling used for local development:
- Ray for sending debug info to a separate app (paid)
- Debugbar for displaying profiling data (free)
- Helo for email testing
- Tinkerwell for testing/debugging during development (paid)
The following env keys (extra compared to a standard Laravel project) are used:
FLARE_KEY
(go to flareapp.io to obtain a key - not free)
Clone the repository and install the dependencies:
git clone https://github.com/ndeblauw/hsdemo.git
composer install
Create a database and set the credentials in the .env file.
(Re)generate the tables and seed with dummy data
php artisan migrate:fresh --seed
Set the application key
php artisan key:generate
Make sure a (local) email testing service is running (e.g. Helo)
- It's better to use the database driver for the queues (and don't forget to configure a queue worker).
- Don't forget to set up the scheduler (e.g. cron job) to run the schedule:run command every minute.
- The scheduler comes with a backup service, don't forget to configure a remote S3 disk (or change the backup location) to have this working
Any pull request from a student that improves this code is welcomed.
If you discover a security vulnerability, please send an e-mail to Nico Deblauwe via [email protected]. Security vulnerabilities will be promptly addressed.
This project can only be used for educational purposes, not limited in time, nor to any institution. There are no rights to use this code for any other purpose. Please reference the orginal repository if you use this code.