This guide walks you through cloning the IEE Edu repository, installing all dependencies, and spinning up the full development environment — including the Laravel dev server, Vite HMR, and a background queue worker — so you can start contributing or exploring the platform in under ten minutes.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/RigbySawGame/ieeEdu_Wen/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Make sure the following tools are installed on your machine before you begin:- PHP 8.2+ with the
sqlite3,pdo_sqlite,mbstring,openssl, andcurlextensions enabled - Composer (latest stable)
- Node.js 18+ and npm
Setup
Set up the environment file
Copy the example environment file and generate a unique application key. The default configuration uses SQLite, so no database server is required for local development.The
.env.example ships with sane local defaults: DB_CONNECTION=sqlite, QUEUE_CONNECTION=database, CACHE_STORE=database, and MAIL_MAILER=log (mail output goes to storage/logs/laravel.log instead of being sent).Set up the database
Create the SQLite database file, run all migrations, and optionally seed the database with sample data.
If you cloned the repo rather than using
composer create-project, you must create the SQLite file manually with touch database/database.sqlite before running migrations.Start the development server
The This single command expands to:
composer run dev script uses concurrently to start three processes in parallel with colour-coded output:| Process | Purpose |
|---|---|
php artisan serve | Laravel HTTP server on http://localhost:8000 |
php artisan queue:listen --tries=1 | Processes queued jobs (mail, notifications) |
npm run dev (Vite) | Frontend HMR with instant Vue component updates |
Create an admin user
Use the built-in Artisan command to create or update a user with the If the email already exists in the database, the command performs an
admin role. The command accepts the email as a positional argument and --name / --password as options.updateOrCreate — updating the name, password, and role without creating a duplicate record.If a frontend change is not reflected in the browser after editing a Vue component, run
npm run build to force a fresh production build, or ensure composer run dev (which includes Vite’s HMR dev server) is still running.