DEV Community

Cover image for Are we Surreal yet?
itsezc
itsezc

Posted on

Are we Surreal yet?

Updated: 24th February 2026

What Is SurrealDB, Really?

SurrealDB is not merely a document store or a graph database. It is a multi-model database engine with:

  • Native authentication and authorization
  • Fine-grained access control
  • Built-in functions and event triggers
  • Graph relationships
  • Full-text search
  • Vector support for AI workloads
  • HTTP + WebSocket APIs
  • Embedded and distributed modes

In practice, this means SurrealDB can operate as:

  • Your database
  • Your auth server
  • Your API layer
  • Your realtime engine
  • Your business logic runtime

In other words: a backend-as-a-service without the typical SaaS constraints.


Can you replace your existing backend with SurrealDB?

In many cases: yes.

Especially for greenfield projects, SurrealDB can meaningfully reduce or eliminate:

  • Custom API servers
  • ORMs and migration tooling
  • Separate auth services
  • GraphQL layers
  • Realtime brokers

Because:

  • Permissions are defined at the schema level.
  • Business logic can live inside database functions.
  • Relationships are first-class.
  • Queries are expressive enough to replace many REST handlers.
  • WebSocket subscriptions provide live updates natively.

The developer experience is unusually cohesive. You model your data, define permissions, write logic, and expose it all in one place.


The Bigger Vision

Traditional backend architecture looks like this:

Frontend → API Server → Auth Server → Cache → Database → Queue → Worker → Storage

The Surreal-first architecture trends toward:

Frontend → SurrealDB

With schema, permissions, logic, relationships, and realtime transport unified. The question is not whether SurrealDB can replace parts of your backend. It already can.

The real question is:

How far can we push it before we need anything else?


Features

Feature Description Status Notes
Extensions (Surrealism) User defined extensions ✅
Auth Authentication & Authorization with Permissions ✅
Functions User defined functions ✅
API Endpoints User defined API endpoints ✅
Events Triggered by Table CRUD events ✅
File Storage (Buckets) Store Files in Buckets ✅ S3 Remote is Enterprise Only
Live Queries & Changefeeds Real-time data updates ✅
Graphs (Edges) Graph tables ✅
Record Versions Time-series ✅ SurrealKV only
Full-text Search Multi-language and algorithm ready ✅
Geometry Fields GeoJSON ✅
Vector Embeddings ✅
RAG & Graph RAG ✅
Embedded Mode ✅ via WASM
GraphQL API ⚠️ In-progress
Surreal AI LLM Model calls ⚠️ In-progress
Opentelemetry Producer & Datastore ⚠️ Producer only
Rate Limiting for Tables, Fields and Functions ❌ Remote HTTP APIs abusable
WebAuthn Password-less Auth flows ❌
OAuth & OpenID Server Create multi-tenant OAuth services ❌
Cron Jobs Scheduled tasks ❌
Sync Offline-first CRDT sync mechanism ❌
Message Queue Pub / Sub system ❌
Child Databases Schema-copied databases for SaaS apps ❌
Database Branching Copy-on-Write clone of your database ❌
Incremental Backups Faster and cheaper backups overtime ❌ Planned

SurrealKV

Feature Description Status Notes
Encryption at REST AES-GCM/XChachaPoly1305 ❌ via KMS
Distributed ❌ Enterprise Only

Ecosystem

Feature Description Status Notes
Dashboard (Surrealist) Manage Database instance via UI ✅
Helm Chart Kubernetes deployment ✅
Migrations & Seeding ✅ Third-party
VSCode Extension ✅ Third-party
Zed Extension ✅ Third-party

Documentation

Feature Description Status Notes
Documentation Full documentation ✅ in English
University Course platform ✅

Top comments (0)