Production Caddy/FPM setup (build/Dockerfile, docker-compose.yml) is untouched -- this only swaps the local dev stack. - .ddev/config.yaml: PHP 8.4, Node 20, sqlite (db container omitted), libreoffice/ghostscript/poppler/sqlite3 packages, Vite port 5173 via Traefik, post-start hooks bootstrap the app on every `ddev start`. - .ddev/commands/web/dev: custom `ddev dev` runs queue + pail + vite (mirror of old `composer dev`). - start_dev.sh / stop_dev.sh: rewritten as DDEV wrappers so devs can onboard without DDEV knowledge; --keep-ddev keeps containers up. - vite.config.js: HMR over WSS to https://pp-planer.ddev.site:5173. - playwright + auth.setup.ts: baseURL switched to https://pp-planer.ddev.site. - .env.example: APP_URL and CHURCHTOOLS_REDIRECT_URI use ddev.site. - composer: drop laravel/sail (replaced by DDEV). - package.json: add explicit "name" so host/container lockfiles match (container WORKDIR is /var/www/html, npm would otherwise pick "html" as project name). - tests/fixtures/propresenter/Test.pro: inline reference fixture; tests no longer depend on a sibling host directory. - AGENTS.md: docs rewritten for DDEV workflow.
106 lines
3.4 KiB
JSON
106 lines
3.4 KiB
JSON
{
|
|
"$schema": "https://getcomposer.org/schema.json",
|
|
"name": "laravel/laravel",
|
|
"type": "project",
|
|
"description": "The skeleton application for the Laravel framework.",
|
|
"keywords": [
|
|
"laravel",
|
|
"framework"
|
|
],
|
|
"license": "MIT",
|
|
"repositories": [
|
|
{
|
|
"type": "vcs",
|
|
"url": "https://git.stadtmission-butzbach.de/public/propresenter-php.git"
|
|
}
|
|
],
|
|
"require": {
|
|
"php": "^8.2",
|
|
"5pm-hdh/churchtools-api": "^2.1",
|
|
"barryvdh/laravel-dompdf": "^3.1",
|
|
"inertiajs/inertia-laravel": "^2.0",
|
|
"intervention/image": "^3.11",
|
|
"laravel/framework": "^12.0",
|
|
"laravel/sanctum": "^4.0",
|
|
"laravel/socialite": "^5.24",
|
|
"laravel/tinker": "^2.10.1",
|
|
"propresenter/parser": "dev-master",
|
|
"spatie/pdf-to-image": "^1.2",
|
|
"tightenco/ziggy": "^2.0"
|
|
},
|
|
"require-dev": {
|
|
"fakerphp/faker": "^1.23",
|
|
"laravel/breeze": "^2.3",
|
|
"laravel/pail": "^1.2.2",
|
|
"laravel/pint": "^1.24",
|
|
"mockery/mockery": "^1.6",
|
|
"nunomaduro/collision": "^8.6",
|
|
"pestphp/pest": "^4.4",
|
|
"pestphp/pest-plugin-laravel": "^4.1"
|
|
},
|
|
"autoload": {
|
|
"psr-4": {
|
|
"App\\": "app/",
|
|
"Database\\Factories\\": "database/factories/",
|
|
"Database\\Seeders\\": "database/seeders/"
|
|
}
|
|
},
|
|
"autoload-dev": {
|
|
"psr-4": {
|
|
"Tests\\": "tests/"
|
|
}
|
|
},
|
|
"scripts": {
|
|
"setup": [
|
|
"composer install",
|
|
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\"",
|
|
"@php artisan key:generate",
|
|
"@php artisan migrate --force",
|
|
"npm install",
|
|
"npm run build"
|
|
],
|
|
"dev": [
|
|
"Composer\\Config::disableProcessTimeout",
|
|
"npx concurrently -c \"#93c5fd,#c4b5fd,#fb7185,#fdba74\" \"php artisan serve\" \"php artisan queue:listen --tries=1 --timeout=0\" \"php artisan pail --timeout=0\" \"npm run dev\" --names=server,queue,logs,vite --kill-others"
|
|
],
|
|
"test": [
|
|
"@php artisan config:clear --ansi",
|
|
"@php artisan test"
|
|
],
|
|
"post-autoload-dump": [
|
|
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
|
"@php artisan package:discover --ansi"
|
|
],
|
|
"post-update-cmd": [
|
|
"@php artisan vendor:publish --tag=laravel-assets --ansi --force"
|
|
],
|
|
"post-root-package-install": [
|
|
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
|
|
],
|
|
"post-create-project-cmd": [
|
|
"@php artisan key:generate --ansi",
|
|
"@php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"",
|
|
"@php artisan migrate --graceful --ansi"
|
|
],
|
|
"pre-package-uninstall": [
|
|
"Illuminate\\Foundation\\ComposerScripts::prePackageUninstall"
|
|
]
|
|
},
|
|
"extra": {
|
|
"laravel": {
|
|
"dont-discover": []
|
|
}
|
|
},
|
|
"config": {
|
|
"optimize-autoloader": true,
|
|
"preferred-install": "dist",
|
|
"sort-packages": true,
|
|
"allow-plugins": {
|
|
"pestphp/pest-plugin": true,
|
|
"php-http/discovery": true
|
|
}
|
|
},
|
|
"minimum-stability": "stable",
|
|
"prefer-stable": true
|
|
}
|