Binary Deployment
QuickDapp builds self-contained executables that include the server, all dependencies, and static assets. Upload the single file to your server and run it—no Node.js or Bun runtime required.
Building
bun run build
This creates binaries for multiple platforms in dist/binaries/:
quickdapp-linux-x64— Linux servers (x64)quickdapp-linux-arm64— Linux servers (ARM64)quickdapp-darwin-x64— macOS (Intel)quickdapp-darwin-arm64— macOS (Apple Silicon)quickdapp-windows-x64.exe— Windows
Running
Make the binary executable and run it:
chmod +x quickdapp-linux-x64
NODE_ENV=production ./quickdapp-linux-x64
The binary reads environment variables from .env, .env.production, and .env.production.local in order.
Server Deployment
Upload the binary and environment file to your server:
scp dist/binaries/quickdapp-linux-x64 user@server:/opt/quickdapp/
scp .env.production user@server:/opt/quickdapp/.env
ssh user@server
cd /opt/quickdapp
chmod +x quickdapp-linux-x64
NODE_ENV=production ./quickdapp-linux-x64
For background execution:
nohup NODE_ENV=production ./quickdapp-linux-x64 > quickdapp.log 2>&1 &
Platform Notes
macOS: You may need to remove the quarantine attribute on first run:
xattr -d com.apple.quarantine quickdapp-darwin-x64
Windows: Run from Command Prompt with environment variables:
set NODE_ENV=production
quickdapp-windows-x64.exe
Security
Set proper file permissions:
chmod 750 quickdapp-linux-x64 # Execute for owner/group only
chmod 640 .env # Read for owner/group only
Consider running as a dedicated non-root user:
sudo useradd -r -s /bin/false quickdapp
sudo chown quickdapp:quickdapp quickdapp-linux-x64
sudo -u quickdapp ./quickdapp-linux-x64