Deployment Recipes
Otso runs as a small Node app and does not require special infrastructure. These deployment recipes cover common setups.
Vercel
Section titled “Vercel”- Fork the repository and push your content.
- In the Vercel dashboard, import the repo.
- Add environment variables (
OTSO_DB_URL,OTSO_SECRET, etc.). - Enable the schedule function if using QStash.
- Trigger a deploy and verify the site responds.
Self‑hosted
Section titled “Self‑hosted”- Install Node and a database on your server.
- Clone the repo and run
pnpm install && pnpm build. - Use systemd or pm2 to run
pnpm startas a service. - Configure a reverse proxy (Nginx/Caddy) with HTTPS.
Scheduling
Section titled “Scheduling”Use cron or QStash to run syncs periodically:
# crontab -e0 * * * * /usr/local/bin/otso sync >> ~/otso.log 2>&1On Vercel with Upstash QStash:
- Create a QStash URL that hits
https://your-app.vercel.app/api/sync. - Set the schedule (e.g., hourly).
- Monitor invocation logs to ensure sync jobs complete.