1.8 KiB
HickLab3D dashboard
Laravel 13, Tailwind CSS 4, and MySQL dashboard for the HickLab3D workshop. It includes user accounts, Etsy shop data, BamBuddy printer status, Parcel2Go orders, and filament dryer control.
Setup
Requirements: PHP 8.3+, Composer, Node.js, and MySQL. Point the web server document root at public/.
composer install
npm install
cp .env.example .env
php artisan key:generate
On Windows PowerShell, use Copy-Item .env.example .env in place of cp .env.example .env.
Set DB_* in .env to your MySQL database, then run:
php artisan migrate
php artisan app:create-admin your-username you@example.com
npm run build
php artisan serve
The admin command prompts for a password. Never pass it on the command line. For local front-end development, use npm run dev alongside php artisan serve.
The migrations use the legacy table and column names. If you point the app at the existing TechOdyssey database, back it up first. The migrations skip tables already present and create Laravel's session, cache, and job tables. Existing schema variations have not been verified against a database dump. Do not run migrate:fresh on a database with production data.
Integrations
- Parcel2Go: set
P2G_CLIENT_ID,P2G_CLIENT_SECRET, andP2G_API_AUTH_URL. - Etsy: add the app keystring and shared secret on the Settings page, then connect the shop with OAuth.
- Printers: set
BAMBUDDY_URLandBAMBUDDY_API_KEYfor live print farm status. - Dryer: set
DRYER_URLandDRYER_API_KEY. The browser talks to authenticated Laravel routes; Laravel forwards status and control requests.
Verification
php artisan test --compact
npm run build
The test suite uses an in-memory SQLite database. MySQL and the external services need environment-specific smoke checks with your credentials and devices.