Preview environments that behave like production —
without touching production.
Branch any environment into isolated slates, route traffic safely, and attach managed services — with AI-assisted provisioning, data seeding, and debugging.
Click an environment to branch a slate
See it in action
Create slate → Deploy → Test → Promote
90s overview
Dedicated Environments vs Slates
Understand when to create a long-lived dedicated environment versus an ephemeral slate branch.
Dedicated Environment
Long-lived, isolated, team-owned. Ideal for performance testing, security review, regional rehearsal, or compliance-sensitive workloads.
Full network isolation with dedicated egress policies
Custom DNS with separate TLS certificates
Full FinOps visibility and billing attribution
Reserved capacity for consistent performance
Isolation Level
Adjust isolation for your compliance requirements
Shared control plane, isolated runtime: Slates share the Celeris control plane but run in isolated runtime environments. Network policies enforce strict east-west boundaries.
How requests route into environments and slates
Understand the complete request journey from edge to your services, with intelligent routing at every hop.
staging.celeris.app
pr-128.staging.celeris.app
Host: pr-128.staging.*
X-Slate-Id: pr-128
10% → slate, 90% → base
Policy Enforcement
Only test traffic routes to slate. Production traffic never touches slate environments. Enforced at the Env Router layer.
Open PR → Preview URL resolves → Request routes to slate
Multi-app branching with cohesive isolation
A Slate is a branch of an environment, scoped to a set of apps and components with consistent routing and dependencies.
Source Environment
12 services active
8 services active
staging-slate / release-candidate
Branched from Staging • TTL: 7 days
Bound Managed Services
slate-rc-postgres
slate-rc-redis
release-candidate.staging.celeris.app
Slate Lifecycle
Data you can trust and isolate
Branch databases when possible, seed fixtures when not. AI recommends the right strategy based on your datastore and compliance needs.
Database Branching with Neon
Neon's copy-on-write branching creates instant database branches without copying data. Changes in the slate are fully isolated from the parent.
Fast Branch Creation
Branches are created in seconds, regardless of database size. No data copying required.
Complete Isolation
All writes in the slate branch are isolated. Parent database is never affected.
Celeris Bindings
DATABASE_URL injected via binding, not raw secrets. Full identity, audit, and cost tracking.
Create slate → Neon branch created → Seed job → Open app
Attach managed services with identity built in
Connect databases, caches, queues, and storage from the Celeris Marketplace. Each binding includes identity, audit, and cost allocation.
Slate: staging-slate / PR-128
Drop integrations here to bind
Branched from staging-pg
Isolated instance
Binding Created
Your services access integrations via environment variable bindings, not raw secrets.
DATABASE_URL
REDIS_URL
Available Integrations
Click to attach to slate
Analytics warehouse
Event streaming
Object storage
Message queues
Cost impact: Isolated copies add cost. AI can recommend shared vs isolated.
AI that plans, provisions, and debugs
Celeris AI understands your environment structure, recommends slate configurations, and enforces guardrails automatically.
Try a prompt
Celeris AI
Generating slate configuration...
# Generated by Celeris AI apiVersion: slates.celeris.io/v1 kind: Slate metadata: name: release-candidate parentEnv: staging spec: apps: - api-gateway@v2.4.1 - user-service@v1.8.0 - order-service@v3.2.0 bindings: - name: database service: neon://staging-pg strategy: branch - name: cache service: upstash://redis ttl: 7d routing: host: release-candidate.staging.celeris.app
Guardrails Applied
Review and apply this configuration
AI suggests slate → Binds services → Creates URL → Adds tests
Gates that validate before promotion
Preview environments are valuable because they run tests and validate. Configure gates for smoke, e2e, load tests, and more.
Created
12/12 passed
Running 8/24...
Pending
Awaiting gates
Smoke Test Config
E2E Test Config
Load Test Thresholds
AI Suggestion
Test checkout-flow.spec.ts has been flaky (2 failures in last 10 runs). Consider adding retry logic or reviewing the test setup.
Enterprise-grade isolation, not just PR previews
Identity boundaries, network policies, mTLS, egress controls, and comprehensive audit logs for every slate.
Zero-Trust by Default
Every slate operates within strict identity and network boundaries. Access is never assumed, always verified.
Identity Boundaries
Per-environment and per-slate identity scopes. Services authenticate with scoped credentials.
Network Policies
East-west traffic rules enforced at the mesh layer. Optional mTLS for service-to-service.
Egress Controls
Allowlist-based egress policies prevent data exfiltration. AI can recommend safe egress rules.
Audit Logs
Every action logged: slate creation, binding, deploy, access. Configurable retention, SIEM export.
Preview URL Access Controls
- SSO required for access
- IP allowlist support
- Time-bound access links
BYOC Deployment
Run preview environments in your own cloud account for data residency and compliance.
Choose your scenario
See how preview environments and slates adapt to different workflows.
PR Preview for Single Service
Create a lightweight slate for each PR. Automatically deploy, test, and share a preview URL for code review.
Ephemeral Slate
Staging
Shared with isolation
7 days (auto-extend on activity)
Included Applications
Test Gates
Ready to try this scenario?
What you might have missed
Restrict preview URLs to authenticated users
Auto-destroy after configurable period
Full FinOps visibility and attribution
Infrastructure as code for slate setup
Branch environments like code.
Create your first slate in minutes. Deploy, test, validate, and promote — with AI-assisted provisioning and enterprise-grade isolation.
Built for enterprise-scale distributed systems