Deployment Guide
Deploy Spindle with a web frontend and API backend on separate services or with containers.
Core Requirement
[!IMPORTANT] If the dashboard and API are hosted on different subdomains, they must share a parent cookie domain so authenticated dashboard sessions work correctly.
Example:
- Dashboard:
app.yourdomain.com - API:
api.yourdomain.com - Cookie domain:
.yourdomain.com
Recommended Deployment Model
Use one service for the dashboard and one for the API.
Frontend
Deploy the web app to a frontend platform such as Vercel or Netlify.
Set the environment variables needed for public app behavior, branding, and API connectivity.
Backend
Deploy the API to a backend platform such as Render, Railway, Fly.io, ECS, or Cloud Run.
Set your database, session, email, storage, and any optional infrastructure variables there.
Container Deployment
Spindle can also be run with containers for self-hosted environments.
docker compose up --build
This is useful for local staging, single-host deployments, or private infrastructure.
Production Checklist
- Confirm your API base URL is reachable from the web app.
- Verify session cookies work across your chosen domains.
- Store API keys and secrets in a proper secret manager.
- Enable monitoring and error tracking before opening access to users.
- Review your plan limits, rate limits, and storage configuration.
Before Going Public
Spindle exposes public API docs, but you may want to keep certain internal or administrative endpoints out of the production docs until they are ready for external use.
If you're running the current codebase, production docs can be filtered so only public endpoints appear while development and local environments still show the full internal surface area.
Next Steps
- Review the Authentication guide for cookie and session expectations.
- Review API Key Configuration before shipping integrations.
- Use the API Reference to test endpoints after deployment.