Deployment build
GitHub Actions can produce a zip ready for FTP upload — no Composer or Node.js required on the server.
What is included
vendor/— production Composer dependenciespublic/build/— compiled Vite assetspublic/.htaccess— setup wizard redirect- Empty writable
storage/andbootstrap/cache/directories DEPLOY.txt— post-upload checklist
Excluded: tests, node_modules, .env, dev caches.
Trigger a build
Tagged release:
bash
git tag v1.0.0
git push origin v1.0.0Manual: Actions → Release → Run workflow → download the artifact.
Upload to Ionos (or similar)
- Download
huddle-<version>.zipfrom the GitHub Release or workflow artifact - Extract locally
- Upload via FTP/SFTP to your web space
- Point the domain document root at the
public/folder inside the package - Visit
/setup.phpto complete installation
| FTP path | Purpose |
|---|---|
/ or /htdocs/ | Web space root |
| Upload target | e.g. /huddle/ (parent of public/) |
| Document root | /huddle/public/ |
Automated FTP deploy
Configure GitHub secrets: FTP_SERVER, FTP_USERNAME, FTP_PASSWORD.
Optional variable: FTP_SERVER_DIR (e.g. /huddle/).
Run Release workflow with Upload build to FTP enabled.
Local build
bash
cd huddle
composer install --no-dev --optimize-autoloader
npm ci && npm run build
cd ..
sh scripts/build-release.shOutput: build/output/huddle-<version>.zip
