The most extensive free open-source web platform
Everything WordPress gives you and everything Strapi gives you, in one TypeScript platform — running on a fraction of the memory. Smaller footprint than PHP. Faster pages. Smaller servers. A smaller bill, every month.
Reference figures from a 1 vCPU / 1 GB VPS against WordPress on PHP-FPM. Full methodology below — every number on this site comes from one file you can check.
Footprint
Lighter than PHP — by architecture, not by trick
Justflows does less work per request because it does not throw its application away after each one. That single design choice is where the memory, the latency and the hosting bill all go.
The app boots once, not once per request
A PHP CMS rebuilds itself on every hit: parse the files, autoload the classes, register every plugin, render, tear it all down. Justflows boots once and stays warm, so a request only does the work that request actually needs.
One event loop instead of a worker pool
PHP-FPM reserves a whole process per concurrent request, and each one holds its own copy of the runtime in memory. Node serves thousands of concurrent connections from a single process, so your RAM stops scaling with your traffic.
Caching and static output are in the core
Page cache, object cache and static rendering ship with the platform — no stack of caching plugins to install, tune and keep in sync. Most requests never reach the database at all.
Every PHP-FPM worker carries its own interpreter, its own opcode cache slice and its own loaded extensions. That is why a PHP CMS needs memory in proportion to peak concurrency — and why Justflows does not.
Same box, same page
- Memory, idle
- 3.5× lower
- Memory, under load
- 4.3× lower
- Time to first byte
- 22× lower
- Requests per second
- 19× higher
How this was measured
- 1 vCPU · 1 GB RAM VPS
- Justflows (Node.js 22, built-in cache, PostgreSQL 16)
- WordPress 6.x (PHP 8.3-FPM + nginx + MySQL 8, default theme, no page-cache plugin)
- k6 · 50 virtual users · 60 s · homepage
Reference figures, not a marketing benchmark. Same VPS, same page, no page-cache plugin on the WordPress side — add one and PHP closes much of the latency gap, though not the memory gap. Every figure lives in a single file in this repository. Reproduce the run and send a pull request if you measure something different.
Two modes, one platform
Full site or headless — you choose
Launch a complete website in minutes, or pipe content to any frontend. Switch modes without switching platforms.
WordPress simplicity, modern stack
Themes, blocks, plugins, and a beautiful admin — everything you need to ship a complete site without touching a framework.
- Visual block editor
- Theme & plugin marketplace
- Built-in SEO & media library
- One-click deploy
Why Justflows
Built for the next generation of the web
Modern architecture without the complexity tax. Everything developers love, nothing end users have to think about.
TypeScript-first
End-to-end type safety from content models to API responses. Catch bugs before they ship.
Plugin ecosystem
Extend anything — hooks, blocks, routes, admin panels. A stable SDK developers can trust.
Block editor
Composable content blocks with a visual editor. Authors create; developers customize.
Multilingual ready
Built-in locale support for content and admin. Reach global audiences from day one.
Self-hosted or cloud
Own your data on your infrastructure, or deploy to managed hosting. No vendor lock-in.
Blazing performance
Edge-ready rendering, smart caching, and optimized media delivery out of the box.
Built for AI agents
Repository-native skills give coding agents the architecture, contracts, safety rules, and verification paths they need to contribute confidently.
Built for humans. Structured for agents.
Justflows is designed so AI coding agents can understand the platform, choose the right extension point, and verify their work. Focused, repository-native skills turn architecture and safety rules into actionable context.
Build with an AI agentAgent-ready by design
Real guidance, kept next to the code
Focused agent skills
Dedicated guidance for the platform, server API, plugins, data, admin UI, themes, deployment, and quality.
Typed, discoverable contracts
A stable TypeScript SDK, explicit hooks, package boundaries, and canonical examples reduce guesswork.
Safety and verification built in
Agents receive the same rules for security, compatibility, migrations, tests, and production packaging as human contributors.
Everything included
One install. No add-ons. No paid tier.
Most platforms hand you a core and sell you the rest. This is the whole list, and all of it is free and self-hostable.
For the people writing
- Visual page builder with a block editor
- Custom content types with a field builder
- Media library with automatic image derivatives
- Revision history with restore
- Navigation menu editor
- Comment moderation with spam and trash queues
- Multilingual content with locale routing
- Theme customizer
- WordPress (WXR) importer
For the people building
- Typed plugin SDK with actions and filters
- Install, activate and deactivate plugins at runtime
- Eleven core blocks — and your own on top
- Theme registry with a template system
- Public REST content API
- justflows CLI for scripting and CI
- Background job scheduler, no Redis required
- PostgreSQL, MySQL and MariaDB migrations
- Typed, versioned hook system
For the people running it
- Browser install wizard — no terminal after setup
- Docker Compose or plain Node deployment
- Roles with granular capabilities
- In-memory and filesystem caching, Redis optional
- Live system health checks
- Core update checks from the admin
- CSRF protection and signed sessions
- PBKDF2 password hashing, 310,000 iterations
- Local filesystem or S3-compatible storage
All of it, on a server that costs less than lunch.
MIT licensed. Self-host it anywhere, fork it, ship it to clients. There is no seat count, no feature flag and no upsell waiting for you at scale.
Head to head
The most extensive free platform, feature for feature
Plenty of projects do one of these things well. Justflows is the one that gives you all of them in a single free install, with nothing held back for a paid tier.
Swipe the table sideways to see every platform.
| Capability | Justflows | WordPress | Strapi | Ghost | Payload |
|---|---|---|---|---|---|
| Complete website out of the box | Included, free | Included, free | Not available | Partial or plugin-dependent | Not available |
| Headless content API with a typed SDK | Included, free | Partial or plugin-dependent | Included, free | Partial or plugin-dependent | Included, free |
| Browser install wizard, no terminal | Included, free | Included, free | Not available | Not available | Not available |
| Plugin system with hooks and filters | Included, free | Included, free | Partial or plugin-dependent | Not available | Partial or plugin-dependent |
| Themes and template hierarchy | Included, free | Included, free | Not available | Included, free | Not available |
| Visual block editor | Included, free | Included, free | Partial or plugin-dependent | Partial or plugin-dependent | Partial or plugin-dependent |
Reflects the free, self-hostable edition of each project. These projects move fast, and we would rather be accurate than flattering — if a row is out of date, open an issue and we will correct it.
What it costs to run
Pick your traffic. Watch the bill shrink.
Same site, same visitors, two runtimes. The lighter one fits on a smaller box — and a smaller box costs less every month, for as long as the site is up.
1 vCPU · 1 GB
2 vCPU · 4 GB
Estimates, based on typical VPS list prices and the memory footprint above. Your real numbers depend on your host, your traffic shape and how many plugins you run — but the direction does not change: a smaller runtime needs a smaller server.
How it works
From zero to live in three steps
Install
One command. PostgreSQL or MySQL. Docker optional.
Configure
Pick full-site or headless mode. Add content types, themes, or plugins.
Launch
Publish content, connect your frontend, and go live.
For developers
An API you'll actually enjoy
Clean REST endpoints, a typed SDK, and webhooks that just work. Integrate in minutes, scale for years.
Read the docs// Fetch published pages via the Justflows SDK
import { Justflows } from '@justflows/sdk'
const client = new Justflows({
url: process.env.JUSTFLOWS_URL
})
export async function getPages() {
return await client.content.findMany({
where: { status: 'published' }
})
}Ready to flow?
Join the open-source community building the future of content platforms.