DeploymentSelf-Hosted Mode
Package & Hosting
Deploy the self-hosted SeatSquirrel files to your web server or static hosting platform
Distribution Package Contents
Your account rep will give you access to your self-hosted package.
The self-hosted package contains two separate directories for each integration mode:
seatsquirrel/
├── standalone-mode/
│ ├── designer.html # Designer application (edit config directly)
│ ├── picker.html # Picker application (edit config directly)
│ └── assets/
│ ├── *.js # Bundled JavaScript modules
│ └── *.css # Bundled stylesheets
└── iframe-mode/
├── designer.html # Designer iFrame host page
├── picker.html # Picker iFrame host page
├── sdk/
│ ├── designer-sdk.js # Designer embedding SDK
│ └── picker-sdk.js # Picker embedding SDK
└── assets/
├── *.js # Bundled JavaScript modules
└── *.css # Bundled stylesheetsUse only the directory that matches your integration mode.
| Mode | Directory | What to Deploy |
|---|---|---|
| Standalone | standalone-mode/ | Deploy designer.html, picker.html, and assets/ to your web server. Learn more |
| iFrame SDK | iframe-mode/ | Deploy all files (including sdk/) to your web server, then include SDK scripts on your site. Learn more |
Hosting
The self-hosted versions can be deployed to any static hosting platform or web server capable of serving static files (nginx, Apache, Caddy, etc.).
Example: Running locally with Serve
- Install Serve:
pnpm install -g serve - Serve the files with
servefrom inside the directory:serve
This will start the server on port 3000.
Example: nginx Configuration
server {
listen 80;
server_name seatsquirrel.yourdomain.com;
root /var/www/seatsquirrel;
index designer.html;
location / {
try_files $uri $uri/ /designer.html;
}
# Cache static assets
location /assets/ {
expires 1y;
add_header Cache-Control "public, immutable";
}
}Example: Caddy Configuration
seatsquirrel.yourdomain.com {
root * /var/www/seatsquirrel
file_server
try_files {path} /designer.html
}