Skip to content

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 dependencies
  • public/build/ — compiled Vite assets
  • public/.htaccess — setup wizard redirect
  • Empty writable storage/ and bootstrap/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.0

Manual: Actions → Release → Run workflow → download the artifact.

Upload to Ionos (or similar)

  1. Download huddle-<version>.zip from the GitHub Release or workflow artifact
  2. Extract locally
  3. Upload via FTP/SFTP to your web space
  4. Point the domain document root at the public/ folder inside the package
  5. Visit /setup.php to complete installation
FTP pathPurpose
/ or /htdocs/Web space root
Upload targete.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.sh

Output: build/output/huddle-<version>.zip

Native tools, weird experiments, and practical performance work.