Requirements
- PHP 8.2+ with required extensions enabled
- Composer 2.x
- Node.js 20 LTS and npm
- MySQL/MariaDB
Step 1: Enable Required PHP Extensions (XAMPP/WAMP/CLI)
Enable the same extensions in the PHP used by Apache and CLI. In XAMPP this is usually C:\xampp\php\php.ini , and in WAMP this is usually inside C:\wamp64\bin\php\phpX.X.X\php.ini.
- Open php.ini and remove
;from these extensions if commented. - Required:
curl,ctype,fileinfo,mbstring,openssl,pdo_mysql,tokenizer,xml,bcmath,intl,zip,gd. - Recommended for smoother package compatibility:
exif,iconv,redis(if used).
Common php.ini lines to verify:
extension=curlextension=mbstringextension=pdo_mysqlextension=zipThen restart Apache and verify the CLI php.ini path:
php --iniStep 2: Prepare Project and Environment
Put the project in your web root for convenience: C:\xampp\htdocs\LuminaAI or C:\wamp64\www\LuminaAI.
copy .env.example .envcomposer installnpm installphp artisan key:generateConfigure database in .env:
DB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=luminaai_localDB_USERNAME=rootDB_PASSWORD=Step 3: Import SQL or MariaDB File in phpMyAdmin
Start Apache and MySQL in XAMPP/WAMP, then open phpMyAdmin: http://localhost/phpmyadmin.
- Create a database (for example:
luminaai_local). - Open the new database in left sidebar.
- Click Import.
- Choose your SQL file (
.sqlor exported MariaDB SQL dump). - Keep format as SQL and click Go.
File location tips:
- You can import from any local folder, but it is best to keep dumps inside project backups, for example
LuminaAI\database\backup\project.sql. - If upload size fails, increase
upload_max_filesizeandpost_max_sizein php.ini, then restart Apache.
Step 4: Run Migrations and Seed Filament Admin
If you imported a full SQL dump, you may skip migration. Otherwise run:
php artisan migratephp artisan db:seedphp artisan storage:linkSeed/create Filament admin user (use what your project supports):
php artisan make:filament-userphp artisan db:seed --class=AdminUserSeederStep 5: Access Website and Admin Panel
Run frontend and backend services:
npm run devphp artisan serve --host=127.0.0.1 --port=8000- Website URL:
http://127.0.0.1:8000 - Filament admin URL:
http://127.0.0.1:8000/admin(or your configured panel path) - Login using seeded admin credentials.
Troubleshooting (Local)
- 500 error / blank page: run
php artisan optimize:clear, checkstorage/logs/laravel.log, and confirmAPP_KEYexists in.env. - Extension missing error: run
php -mand confirm required modules are loaded in the same CLI PHP binary used by artisan. - SQL import too large: increase
upload_max_filesize,post_max_size, andmax_execution_timein php.ini, then restart Apache. - Filament login fails: ensure seeded user has correct panel access/role and reset password using Tinker or rerun admin seeder.
- Permission errors: ensure
storageandbootstrap/cacheare writable by the local web server user. - Assets not loading: rerun
npm installandnpm run dev, then hard refresh browser (Ctrl+F5).