## Optionally with sanitized production data
I've been building VeilStream to solve a problem I kept running into: Rigorous evaluation of changes, such that they won't break production is hard. Staging is shared and often broken. Pulling to local setups are a pain. So PRs get a quick code skim and a "LGTM." VeilStream spins up isolated preview environments from your `docker-compose.yml`, (optionally) complete with a sanitized snapshot of your production database.
## What happens when you open PR #247
1. GitHub webhook hits our API
2. We pull your branch and parse your compose file
3. Kubernetes manifests render from your compose services (and applied to our cluster)
4. A fresh namespace gets created with your containers
5. Optionally, postgres containers are seeded with your data
6. Health checks pass, you get a stable URL: `https://<unique-string>.env.veilstreamapp.com`
7. that link is commented back on any open PRs from that branch
Total time from push to working environment: about 2 minutes.
### The reviewer experience
Your teammate clicks the link. They're using your app with real data structure, real relationships, real edge cases—but emails are fake, SSNs are masked, and PII never leaves your production boundary.
No shared staging. No "wait, who's testing on staging right now?" No stepping on each other's test data. No risk to prod.
### When PR #247 gets merged or closed
The namespace, containers, and database are automatically destroyed. Nothing lingers.
## What it's not
- Not serverless/edge - this is for apps that run containers
- Not a Vercel competitor - we're focused on the full stack from a docker-compose perspective
- Not a database replication tool - the proxy works like a man-in-the-middle, not on the WAL
## MCP Server for AI Agents
We built an MCP server so Claude Code, Cursor, and other AI coding agents can deploy preview environments directly. Your agent can spin up an environment, run tests against it, and tear it down—all without leaving your editor.
## Tech Stack
- Backend: Go (API + reconciler)
- Frontend: React + TypeScript
- Infrastructure: Kubernetes, with dynamic namespace provisioning
- Database proxy: Custom Go proxy that interfaces with a database, and exposes the standard psql wire protocol, mimicing a server
## Links
- Landing page: https://www.veilstream.com
- Application: https://app.veilstream.com
- Example project: https://github.com/veilstream/example-music-company
- Demo video: https://www.linkedin.com/posts/jonessteven_i-have-only-made-...
- Docs: https://docs.veilstream.com
Happy to answer questions.
Also: htaccess-style password protection is available for your preview environments.