Snapshot
Private microsite hosting with magic-link access
A private microsite library published instantly to wildcard subdomains — share static sites via magic links with encrypted cookies.
- Docker container
- Kubernetes Helm chart
- 10 database engines
- 3 object-store backends
- 2 auth methods
- 1 cache engine
- 4 languages (EN, FR, ES, PT)
- REST API + OpenAPI 3.0.3
- Realtime WebSocket channels
- Atlas schema migrations
Snapshot is for agencies and companies sharing prototypes without passwords. Upload HTML, ZIP, or paste raw HTML — it is live at `slug.ui.your.com` instantly. Create viewer identities and magic invite links. Viewers get encrypted 90-day session cookies, no login required. Access can be revoked instantly. Perfect for client previews, design reviews, and sharing internal tools without OAuth.
Key features
Four import methods: paste raw HTML, upload single file, ZIP archive, or Figma URL
Wildcard subdomain hosting: each microsite at `slug.ui.example.com`
Magic link access — no passwords, no OAuth, just a link
Encrypted AES-256-GCM session cookies (90-day, server-revocable)
Viewer management: create, update, revoke identities
Per-site deny rules for granular access control
Session management: list, inspect, revoke individual or all sessions
Invite tracking with status (claimed / expired / revoked)
Storage browser: local disk, S3, or Azure Blob
Live log tail and uptime metrics
Multi-database: SQLite, Postgres, MySQL, SQL Server
Where it goes beyond the obvious
Wildcard subdomain hosting without complex nginx config
Magic link flow landing directly on the microsite subdomain
Encrypted session cookies with server-side revocation
418 sentinel for nginx-proxy passthrough integration
Tech highlights
- Import: HTML, ZIP, raw HTML paste, Figma URLs
- Hosting: wildcard subdomains with nginx-proxy integration
- Auth: magic links with AES-256-GCM encrypted cookies
- Storage: local disk, S3, Azure Blob
- Databases: SQLite, Postgres, MySQL, SQL Server
Built on
REST API surface
- POST /auth/login Admin login
- GET /claim/{token} Viewer magic link claim
- GET /sites, POST /sites — Sites (create from HTML, ZIP, raw, Figma)
- POST /viewers Create a viewer identity
- POST /viewers/{id}/invites Issue magic link
- GET /viewers/{id}/rules Per-site deny rules
- GET /sessions, DELETE /sessions/{id} — Revoke sessions
- GET /dashboard/stats Invites, sessions, viewers, sites
Full spec at GET /openapi — Swagger UI at /swagger/
Backends you can actually pick from.
This service speaks the backends below natively. Swap with a single environment variable.
Databases
- SQLite
- PostgreSQL
- MySQL
- SQL Server
- Oracle
- MongoDB
- Redis
- Valkey
- DynamoDB
- Cassandra
Cache
- Redis
Object storage
- Local
- S3/MinIO
- Azure Blob
Auth
- Magic link (AES-256-GCM cookies)
- Shared admin key
Use cases
Agencies sharing design prototypes with clients securely
Product teams previewing features with stakeholders
Dev teams sharing internal tools and dashboards
Marketing hosting temporary campaign microsites
Design communities sharing portfolio projects
Snapshot vs Netlify (password protection), Vercel (preview auth), InVision / Figma
Private prototype hosting with magic links — not a Netlify password screen
More in deployment
Deploy Snapshot. Today.
One Docker image. One compose stack. One afternoon to production. Snapshot is waiting.