RaisFastRaisFast
Getting Started

Why RaisFast

Why we built RaisFast — the only single-binary BaaS and headless CMS that delivers built-in ecommerce, wallet, payment, high performance, zero GC pauses, and multi-engine plugin extensibility all at once.

The Problem

Building a modern backend for content-driven applications usually means assembling a stack:

  • Supabase / Firebase for the backend (Auth, DB, Storage)
  • Strapi / WordPress for CMS (Blog, Pages, Content)
  • Shopify / Stripe for Ecommerce & Payment
  • Redis / BullMQ for Job Queue & Scheduling
  • Elasticsearch / Meilisearch for Full-text Search
  • A separate admin panel deployment

Each piece needs its own deployment, monitoring, scaling, and troubleshooting. The operational cost is enormous — especially for small teams and solo developers.

Deeper problems

Data is not fully yours. Cloud products like Firebase and Shopify store your data on their servers. You can't control where it goes, who accesses it, or when it might be gone. Vendor lock-in is real — migrating away means rebuilding everything.

No desktop experience. Every existing BaaS and CMS is web-only. There is no desktop IDE where you can manage your content, design your data schema, write plugins, and preview your site — all in one window, offline-capable, with native performance.

The Franken-stack problem. Need a blog? Install WordPress. Need a store? Add Shopify. Need an API? Set up Supabase. Need payment? Integrate Stripe. Before you know it, you're maintaining 5+ services, each with its own billing, updates, security patches, and failure modes.

Runtime bloat. Node.js, PHP, Python — every CMS and BaaS today runs on a garbage-collected language. That means GC pauses, memory spikes, cold starts, and constant tuning. Your $10/month VPS struggles to run one Strapi instance.

Plugin hell. WordPress has 60,000+ plugins, but installing 10 of them means 10 potential points of failure. Security vulnerabilities, incompatibilities, abandoned maintenance — the plugin ecosystem is both WordPress's strength and its biggest weakness.

What the market offers

ProductOpen SourceData PrivateBaaSCMSBlogEcommercePaymentDesktop IDESingle BinaryZero GCPlugins
Supabase
Appwrite15 runtimes
Firebase
PocketBaseJS only
WordPressPHP plugins
StrapiJS plugins
Payload CMSPlugins
DirectusExtensions
GhostLimited
Shopify
RaisFast4 engines

No existing product delivers Open Source + Data Private + BaaS + CMS + Ecommerce + Payment + Desktop IDE in a single binary. Firebase and Shopify are closed-source, your data lives on their servers. Supabase and Appwrite are open-source BaaS-only. WordPress, Strapi, Payload CMS, Directus, and Ghost are open-source CMS-only. PocketBase is closest (open-source, single binary BaaS) but has no CMS, no ecommerce, no payment, and no plugin extensibility. None of them provide a desktop IDE.

RaisFast is the only open-source product that is simultaneously a full BaaS, a headless CMS, an ecommerce platform, and comes with a desktop IDE — all self-hosted with full data privacy.

How RaisFast Solves It

Blazing Performance

Built entirely in Rust with Axum (the fastest async HTTP framework in the Rust ecosystem) and SQLx (async database driver with compile-time query checking):

  • Zero-cost abstractions — Rust's type system eliminates runtime overhead
  • Async I/O — Tokio runtime handles thousands of concurrent connections on a single core
  • Connection pooling — Built-in SQLx pool with configurable size
  • In-memory cache — moka (TinyLFU + LRU) for hot data, no Redis needed

Result: sub-millisecond response times for cached reads, handles 10k+ concurrent connections on modest hardware.

Single Binary, Zero Dependencies

# That's it. No runtime, no package manager, no container required.
raisfast server start
  • Static linking — Musl builds for fully static Linux binaries
  • Embedded Admin UI — React SPA compiled into the binary via rust-embed, served at /admin
  • Embedded database — SQLite for zero-config local development
  • Embedded search — Tantivy for full-text search without Elasticsearch
  • Embedded cache — moka for in-memory caching without Redis

One file. One command. Production-ready.

No GC, No Pauses

Rust's ownership model eliminates the garbage collector entirely:

  • Predictable latency — No stop-the-world GC pauses, ever
  • Deterministic memory — Resources freed the instant they go out of scope
  • Low memory footprint — Typical idle usage under 20 MB, even with plugins loaded
  • No memory leaks — No GC tuning, no heap profiling, no -Xmx flags

This matters for real-time features (WebSocket, SSE), consistent API response times, and running on resource-constrained environments (VPS, edge devices, embedded hardware).

Easy Deployment

# Install
curl -fsSL https://raisfast.com/install.sh | sh

# Run
raisfast server start

# Docker
docker run -p 9898:9898 ghcr.io/raisfast/raisfast
  • One binary — Copy to server, run. No installers, no package managers, no build steps
  • Cross-platform — Pre-built for macOS, Linux, Windows, ARM64, x86_64, musl
  • Auto-migration — Schema created on first run, no manual database setup
  • Built-in process managementserver start/stop/restart/status via PID file
  • Optional TLS — Built-in rustls, no Nginx needed for HTTPS

Plugin Extensibility

Four runtime engines for infinite extensibility:

EngineUse Case
JavaScript (QuickJS)Web developers, npm ecosystem familiarity
RhaiLightweight scripting, safe sandboxing
LuaGame/infra scripting, embedded extensibility
WebAssemblyHigh-performance plugins in any language (Rust, C, Go, Zig)

Plugins can:

  • Register HTTP routes
  • Hook into content lifecycle events (filter, action, render override)
  • Schedule cron jobs
  • Access a sandboxed virtual filesystem
  • Call host functions (DB, HTTP, cache) with permission gating
  • Hot-reload without server restart

The plugin manifest is a simple TOML file:

[plugin]
name = "my-plugin"
version = "0.1.0"
entry = "main.js"
runtime = "js"

[permissions]
http = ["GET", "POST"]
db = ["read", "write"]

[[hooks]]
event = "post_created"

Built-in Features

Everything you need for a production backend, out of the box:

FeatureDescription
BlogPosts, categories, tags, comments
PagesStatic page management
MediaFile upload, thumbnails, local/S3 storage
EcommerceProducts, categories, cart, orders
WalletPer-user credit/debit balances with outbox pattern
PaymentAlipay, WeChat Pay, Stripe, Dodo, Creem
Multi-tenantHeader-based or domain-based tenant isolation
SearchFull-text search with Chinese tokenization
WorkflowState machine engine for content lifecycle
WebhooksHMAC-SHA256 signed event delivery
RBACRole-based access control (admin, editor, author, reader)
OAuthGitHub, Google, WeChat login
Email/SMSSMTP, SendGrid, Resend, Aliyun, Twilio
GraphQLOptional GraphQL endpoint
OpenAPIAuto-generated Swagger UI

When to Choose RaisFast

RaisFast is ideal when you:

  • Want a BaaS with built-in CMS and ecommerce — no other project offers this combination
  • Need a single deployable artifact instead of a microservices zoo
  • Need predictable, low-latency API responses
  • Run on resource-constrained infrastructure (small VPS, edge, embedded)
  • Value operational simplicity — one process, one log, one config
  • Need extensibility without forking — plugin engines cover all skill levels
  • Build content-driven apps (blogs, stores, SaaS, portfolios, docs sites)
  • Need payment integration (Alipay, WeChat Pay, Stripe) out of the box
  • Want multi-tenant SaaS without building it from scratch

vs Supabase / Firebase

Supabase and Firebase are excellent BaaS products, but they have no CMS, no ecommerce, and no payment. Supabase requires Docker with 12 containers. Firebase locks you into Google Cloud.

Choose RaisFast if you need CMS, ecommerce, or payment, or if you want single-binary self-hosted deployment.

vs PocketBase

PocketBase proved that "single-binary backend" is a real need (58K+ stars). But it intentionally limits scope — no CMS, no ecommerce, no payment, no multi-database, no multi-tenant.

Choose RaisFast if you want everything PocketBase offers, plus CMS, ecommerce, payment, full-text search, and multi-database support. RaisFast is a superset of PocketBase.

vs Strapi / WordPress

Strapi and WordPress are CMS products, but they require a runtime (Node.js / PHP), have GC pauses, and don't include ecommerce or payment out of the box.

Choose RaisFast if you want 10x faster performance, single-binary deployment, built-in ecommerce/payment, and no runtime dependency. No Node.js or PHP needed.

vs Payload CMS / Directus

Payload CMS and Directus are modern headless CMS built on Node.js with nice developer experiences. But they require Node.js runtime, have no built-in ecommerce or payment, and need a separate database setup. Payload is also tightly coupled to Next.js.

Choose RaisFast if you want single-binary deployment, built-in ecommerce/payment, and no Node.js dependency. Works with any frontend framework, not just Next.js.

vs Ghost

Ghost is a beautiful blogging platform with built-in membership and newsletter features. But it's focused solely on publishing — no ecommerce, no payment, no plugin system, no BaaS capabilities. Requires Node.js runtime.

Choose RaisFast if you need more than a blog — ecommerce, payment, BaaS, multi-tenant, or plugin extensibility. And if you want single-binary deployment instead of Node.js.

On this page