🤏
Reparatie Beheersysteem
v2.0
Installatiehandleiding
Serverinstallatie • Configuratie • Integraties • Updates
Versie 2.0  —  Maart 2026  —  Vertrouwelijk document
Inhoudsopgave
  1. Vereisten
  2. Server Installatie (eerste keer)
  3. Laravel Configuratie (.env)
  4. Opslag rechten
  5. Cron instellen
  6. Post-installatie seeding
  7. Eerste login
  8. Integraties configureren
  9. Medewerkers configureren
  10. Updates uitrollen

1 Vereisten

ComponentMinimale versieAanbevolen
PHP8.28.3
Composer2.xLaatste stabiel
MySQL / MariaDB5.7 / 10.48.0 / 10.6
Node.js1820 LTS
PHP-extensiespdo_mysql, mbstring, openssl, fileinfo, curl, zip, gd

Shared hosting (cPanel)

De frontend (dist/) is een statische Vue 3-build en vereist geen Node op de server — Node is alleen nodig op de ontwikkelmachine bij bouwen.

2 Server Installatie (eerste keer)

Upload de volgende mappen/bestanden via FTP (FileZilla) of de cPanel Bestandsbeheerder:

Lokale bronUploaddoel op server
api//public_html/repair-angel-v2/api/
dist/* inhoud/public_html/repair-angel-v2/
.htaccess/public_html/repair-angel-v2/.htaccess
Upload de inhoud van dist/ (niet de map zelf) rechtstreeks naar /public_html/repair-angel-v2/. De index.html moet dus op /public_html/repair-angel-v2/index.html staan.

Installeer daarna de PHP-dependencies via SSH:

cd /public_html/repair-angel-v2/api
composer install --no-dev --optimize-autoloader

3 Laravel Configuratie (.env)

  1. Kopieer het voorbeeldbestand:
    cp api/.env.example api/.env
  2. Open api/.env en vul de databasegegevens in:
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=jouw_database_naam
DB_USERNAME=jouw_db_gebruiker
DB_PASSWORD=jouw_db_wachtwoord

APP_URL=https://yourdomain.com/repair-angel-v2
APP_ENV=production
APP_DEBUG=false
  1. Genereer de applicatiesleutel:
    php artisan key:generate
  2. Voer de databasemigraties uit:
    php artisan migrate
  3. Vul de basistabellen (rollen, instellingen, etc.):
    php artisan db:seed
  4. Cache de configuratie voor productie:
    php artisan config:cache
    php artisan route:cache
Controleer na migrate in de database of de tabel migrations correct gevuld is. Als er fouten optreden, verifieer dan eerst de DB-verbinding via php artisan db:show.

4 Opslag rechten

Stel de juiste schrijfrechten in op de storage-mappen en maak de symbolische link aan:

chmod -R 775 api/storage
chmod -R 775 api/bootstrap/cache
php artisan storage:link
Op sommige shared hosting-omgevingen is 775 niet voldoende en is 777 tijdelijk nodig. Gebruik 777 alleen als 775 niet werkt en herstel dit daarna naar 775.

5 Cron instellen

De Laravel Scheduler is vereist voor:

Voeg de volgende cron job toe (cPanel → Advanced → Cron Jobs, of via crontab -e):

* * * * * cd /home/gebruiker/public_html/repair-angel-v2/api && php artisan schedule:run >> /dev/null 2>&1
Pas /home/gebruiker/ aan naar het werkelijke pad van jouw hostingaccount. Controleer het volledige pad via pwd in de SSH-sessie vanuit de api/-map.

6 Post-installatie seeding Eenmalig

Na de eerste login (zie stap 7) moet je twee endpoints aanroepen met een admin-token om de standaardinhoud te laden. Gebruik een API-client (bijv. Postman, Insomnia of curl):

Tutorials laden

POST https://yourdomain.com/repair-angel-v2/api/tutorials/seed
Authorization: Bearer <admin-token>

Brieftemplates laden

POST https://yourdomain.com/repair-angel-v2/api/letter-templates/seed
Authorization: Bearer <admin-token>
Het admin-token is op te halen na inloggen via Mijn Profiel → API Tokens in de applicatie.

7 Eerste login

URL
https://yourdomain.com/repair-angel-v2/
E-mailadres
admin@repairangel.nl
Wachtwoord
Admin@123
Verander het standaardwachtwoord direct na de eerste login!
Ga naar Mijn Profiel → Wachtwoord wijzigen. Gebruik een sterk, uniek wachtwoord.

8 Integraties configureren

Ga naar Systeem → Integraties in het beheermenu.

IntegratieBenodigde gegevensStatus
UPS
  • Client ID
  • Client Secret
  • Rekeningnummer
Verkrijgbaar via UPS Developer Portal → Apps
Optioneel
Twilio
  • Account SID
  • Auth Token
  • Van-nummer (E.164 formaat)
Optioneel
Mollie
  • API-sleutel (live_... of test_...)
Optioneel
OpenAI
  • API-sleutel (sk-...)
  • Model kiezen (bijv. gpt-4o)
Optioneel
SnelStart
  • Abonnementssleutel
  • Client ID
Optioneel
Integraties zijn onafhankelijk van elkaar. Het systeem werkt ook zonder externe koppelingen — activeer alleen wat je daadwerkelijk gebruikt.

9 Medewerkers configureren

Ga naar Systeem → Medewerker Instellingen.

Per medewerker instellen

Gebruik de Test e-mail sturen-knop na het opslaan van de e-mailinstellingen om te bevestigen dat de verbinding werkt.

10 Updates uitrollen

Backend update (via SSH)

cd /public_html/repair-angel-v2/api
git pull
composer install --no-dev --optimize-autoloader
php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache

Frontend update (op ontwikkelmachine)

# Bouw de nieuwe versie lokaal
npm run build

# Upload daarna de inhoud van dist/ naar de server
# Via FTP: /public_html/repair-angel-v2/ (overschrijf bestaande bestanden)
Voer backend-updates altijd uit buiten piekuren. De opdracht php artisan migrate --force is vereist in productieomgeving (Laravel vraagt anders om bevestiging).
Maak altijd een databaseback-up vóór een update met migraties. Gebruik cPanel → Databases → phpMyAdmin → Exporteren, of via SSH:
mysqldump -u gebruiker -p database_naam > backup_$(date +%Y%m%d).sql