$ Your content.
Your infrastructure.
Your rules._
A headless CMS built entirely in the open. Every line auditable, every plugin community-vetted, every deployment yours to own. No per-seat traps. No vendor lock. Just infrastructure.
MODEL EDITOR
BlogPost
$ forge list --modules
Everything you need. Nothing you don't.
Hover any module to see it in action. This is the actual system — not a marketing slide.
Content Modeling
Drag fields into schemas. Define relations. Version your models. No GUI lock-in — every model is a TypeScript file you own.
Schema Preview
5 fields · REST + GraphQL auto-generated
API Playground
REST and GraphQL auto-generated from your schema. Interactive explorer built-in. Test from the browser before you write a line of client code.
API Playground
// Auto-generated REST endpoint
const res = await fetch(
'/api/content/blogpost',
{
headers: {
'Authorization': 'Bearer <token>'
}
}
);
// → 200 OK · 8ms avg
Plugin Marketplace
98 community-vetted plugins. Every dependency auditable. Install in one command, fork and modify without asking anyone's permission.
Dependency Graph
98 community plugins · zero conflicts
Ready to see it live?
A pre-seeded instance with real content models — no signup, no credit card.
Role Permissions
Granular RBAC with custom roles. SSO via SAML or OAuth. Audit logs per action. Enterprise-grade access control without enterprise pricing.
Role Matrix
| Role | Read | Write | Deploy |
|---|---|---|---|
| Admin | ✓ | ✓ | ✓ |
| Editor | ✓ | ✓ | — |
| Author | ✓ | — | — |
| Viewer | ✓ | — | — |
Custom roles · RBAC · SSO-ready
Deployment Hooks
Trigger Vercel, Railway, or your own pipeline on publish. Typed hook config in your repo. Every deploy traceable, every rollback one command away.
Webhook Config
// forge.config.ts
export default {
hooks: {
'content.publish': [
triggerVercelDeploy(),
invalidateCDNCache(),
notifySlack('#content')
]
}
}
Media Pipeline
Upload to S3, R2, or local disk. Auto-convert to WebP/AVIF. Responsive breakpoints generated. CDN-ready URLs from day one.
Transform Pipeline
Auto-format · lazy load · blur placeholder
$ forge deploy --target anywhere
Built for how you
actually deploy.
No vendor-managed hosting you can't escape. Forge runs wherever you run things — from a $6 VPS to a multi-region Kubernetes cluster. The infrastructure decision is yours, permanently.
Vercel
Edge-optimized
Railway
Container deploy
Fly.io
Global regions
Self-hosted
Your own box
Docker
Compose-ready
$ npx create-forge-app my-cms
✓ Scaffolding project...
✓ Installing dependencies...
✓ Generating content types...
✓ Ready in 14s
$ forge dev
→ Admin: http://localhost:1337/admin
→ API: http://localhost:1337/api
→ GraphQL: http://localhost:1337/graphql
$ forge deploy --target vercel█
14s
cold start
< 2MB
container
99.9%
uptime SLA
$ forge demo_
Step inside a live instance. Real content models, real API responses, real admin UI. No email gate. No credit card. Click and you're in.