A curated list of SurrealDB resources, tools, utilities, and applications.
If you want to contribute to this list, then please read the contributing guidelines.
We're moving Awesome Surreal content to Surreal Labs!
To contribute your SurrealDB projects, tools, or resources, please follow our new Lab Contribution Guide.
This repository will be archived soon. All new content should be submitted to Surreal Labs.
A curated list of SurrealDB resources, tools, utilities, and applications.
- Applications
- Client libraries
- Management interfaces
- Development tools
- Deployment tools
- Docker images
- Integrations
- Libraries
- GitHub Actions
- Starter Kits
- Tutorials
- Videos
- Projects
- SurrealDB -
is a scalable, distributed, collaborative, document-graph database, for the realtime web.
- awaited-surrealdb - Typescript wrapper for surrealdb.js that holds queries until connection is established.
- mylk - Client library for Ruby with support for HTTP and WebSocket connections.
- surrealdb-cloudflare - A Typescript implementation for SurrealDB's HTTP API. Can also be used outside of Cloudflare.
- surrealdb-erlang - Client library for Erlang and other BEAM languages.
- surrealdb-flutter - Client library for Dart and Flutter.
- surrealdb-spring-client - An unofficial maven library to easily integrate surrealdb with springboot.
- surrealdb.c -
official driver for C.
- surrealdb.cr - Client library for Crystal with support for HTTP and WebSocket connections.
- surrealdb.go -
official driver for Golang.
- surrealdb.java -
official driver for Java.
- surrealdb.js -
official driver for JavaScript.
- surrealdb.net -
official driver for .NET.
- surrealdb.node -
official driver for Node.js.
- surrealdb.php -
official driver for PHP.
- surrealdb.py -
official driver for Python.
- surrealdb.wasm -
official driver for WebAssembly.
- surrealdb -
official driver for Rust.
- SurrealDB_DSL - An unofficial Kotlin DSL and driver.
- SurrealDB Admin - A serverless app to browse and query your local or cloud surrealDB instance. No installation required.
- SurrealDB Explorer - A simple database viewer/editor for SurrealDB.
- Surrealist -
official dashboard, query playground and database explorer for SurrealDB.
- SurrealReact - An explorer UI written in react.
- surreal-codegen - SurrealDB Typescript type-safe client generator which extends the official SurrealDB package. Matches your raw
.surql
queries against your schema to generate strongly typed queries & parameters. - surrealdb-client-generator - A handy tool that simplifies the process of generating zod schemas and TypeScript clients.
- Dokku Surrealdb - A plugin to deploy SurrealDB as a Dokku plugin.
- GKE using Terraform - Multicluster Cross-Regional Deployment using GKE Autopilot and Terraform
- Pterodactyl Egg - An egg to deploy SurrealDB for the Pterodactyl Panel.
surrealdb/surrealdb -
official Docker image.
- SurrealDB Document Loader for LangChain - A simple document loader implementation around SurrealDB for LangChain.
- SurrealDB Vector Store for LangChain - Use SurrealDB as a vector store backed retriever within LangChain to build rich Generative AI applications with Large Language Models.
- SurrealDB Grafana datasource - The SurrealDB datasource plugin enables you to query and visualise SurrealDB data directly within Grafana, offering seamless integration and exploration of SurrealDB datasets.
- SurrealDB MCP Server - A Model Context Protocol (MCP) server that provides a standardized interface for AI assistants to interact with a SurrealDB database. This server enables AI systems to query and manipulate data within a configured SurrealDB instance.
- allographer - A query builder and schema builder for Nim that also supports SurrealDB.
- kysely-surrealdb - Kysely (type-safe sql query builder) dialects, plugins and other goodies for SurrealDB.
- PySurrealDB - SurrealDB driver and query builder for Python.
- ra-surrealdb - A data provider and an auth provider for react admin to integrate with SurrealDB.
- Sirqle - Python wrapper for surrealdb.py.
- surreal-id - (Rust) - Create custom ID types that are guaranteed to be valid RecordIds in SurrealDB, add them to your structs, and serialize and deserialize from SurrealDB with ease.
- surrealdb_extra - (Rust) - Query builder and orm.
- surrealdb_migration_engine - Simple yet powerful migration engine for SurrealDB.
- surrealdb_query_builder - SurrealDB query builder for Dart and Flutter.
- surrealdb-extras - (Rust) Creates namespace, database, tables and defines attributes automatically and generates/adds functions like add/delete/update to the struct.
- surrealdb-migrations - An awesome SurrealDB migration tool, with a user-friendly CLI and a versatile Rust library that enables seamless integration into any project.
- surrealdb-valibot - Re-usable valibot schema's for use with the JavaScript SDK.
- surrealdb-zod - Re-usable zod schema's for use with the JavaScript SDK.
- Surrealised - A Server-Side TypeScript SurrealDB Client with a fluent query builder.
- surrealist - Python synchronous client with support for HTTP and WebSocket connections, and all SurrealDB features (live queries, QL, Changes Feed).
- type-surrealdb - Generate schemas and
.surql
for SurrealDB using TypeScript classes and decorators.
- SurrealDB GitHub Action -
official GitHub Action to use SurrealDB in GitHub Continuous Integration pipelines.
- surrealdb-migrations - This GitHub Action installs and runs surrealdb-migrations. It is used to apply migrations on a SurrealDB instance.
- Use SurrealDB in GitHub Actions - GitHub Action for using SurrealDB in your tests.
- Starter Kit for SurrealDB + SpringBoot - PDROJACK.
- Starter Kit for SurrealDB + Tauri + Next.js - Reymom.
- SurrealDB + FastAPI-NextJS Starter - Mardav Chirag and Richard Orido.
- SurrealDB + Flask Starter - Syed Zubeen.
- SurrealDB + Go Driver Starter - Salman Shah.
- SurrealDB + Koa starter rest api - Jerempy.
- SurrealDB + Nuxt 3 Starter - Dylan Vanmali.
- SurrealDB + React-Nodejs starter - M SaiKiran.
- SurrealDB + Rocket - David Zabala.
- SurrealDB + SolidStart Starter - Sam "metru" Zanca.
- SurrealDB + Streamlit Starter - Lucifer Akirami.
- SurrealDB + SvelteKit Auth Example - A JWT-based authentication example with globally available, universal request-isolated database example implementation - Albert Marashi.
- SurrealDB + SvelteKit Starter - Jitesh Doshi.
- SurrealDB + SvelteKit - Oskar Gmerek
- SurrealDB + Vue Blog Starter - SrWither.
- SurrealDB + Vue Starter - Dharani Inkollu.
- Aeon's Surreal Renaissance -
official book for in-depth learning through storytelling.
- Build an AI RAG Agent with LangGraph, Ollama, Llama2, and SurrealDB - By Karim Lalani for Austin LangChain Group.
- CLI phone book in Python using SurrealDB as database - By Gabor Szabo.
- Getting started with SurrealDB using Python and Docker - By Gabor Szabo.
- Getting started with SurrealDB - By SurrealDB team.
- Hosting Surreal DB in Rust in Less Than 3 Minutes - Gui Bibeau.
- How to Use SurrealDb with the Fresh Framework and Deno - By Rajdeep Singh, FreeCodeCamp.
- Improve database management with SurrealDB - By Alexander Nnakwue, LogRocket.
- Simple API with Gin/Gonic and SurrealDB (GO) - By Atharva Deshpande.
- SurrealDB - Rust Embedded Database - Quick Tutorial - Jeremy Chone.
- SurrealDB Fundamentals Course -
official course to efficiently learn SurrealDB in 3 hours.
- Unlocking SurrealDB: Building a Real-World Multi-Tenant RBAC System Made Easy (4 Part Series) - Sebastian Wessel
- Beyond Surreal? A closer look at NewSQL Relational Data - Beyond Fireship.
- Getting started with SurrealDB! Future of cloud databases (maybe)? - Chris Hay.
- Livestream series documenting learning SurrealDB - By Xkonti.
- Rust Powered Database SurrealDB (It's Pretty Ambitious) - Code to the Moon.
- SurrealDB in 100 seconds - Fireship.
- SurrealDB. The Kitchen Sink Document Store that might dethrone Firebase - Ray Villalobos.
- Using SurrealDB to prove football statistics - By Joseph McCarthy, Irish Abroad.
- DOX For Everything - An online forum for discussions, questions and answers, fan pages, blogs, or anything else.
- Gofer Engine - An HL7 (Healthcare Level 7) Interface Engine built to deploy on Node.js servers that provides SurrealDB as a persistance layer option.
- Kards Social - FOSS social media app.
- MECOMP - A local music player that uses surrealdb as the backend, features song similarity searches ("find songs similar to this song/album/artist/playlist"), song clustering, and other fun things.
- Nextjs + surrealdb demo - Basic blog that serves as a demo / template for your nextjs + surrealdb project.
- Playrbase - Event & player management system.
- Style Guide AI Assistant - A voice enabled AI assistant that lets you talk to your wardrobe.
- Surreal-4o Fine-tuned Model Datasets for SurrealQL Queries - Project to create structured datasets for OpenAI to fine-tune o3-mini for generating text in SurrealQL.
- SurrealDB AI Docs Retrieval - Project to showcase: How to build a GPT-Based question-answering system on top of SurrealDB Docs. Utilizing SurrealDB as a vector store itself.
- SurrealDB as a Vector Store for LangChain - A Jupyter notebook demonstrating how to use SurrealDB as a Vector Store when building Generative AI applications with LangChain.
- SurrealDB Presence Demo - Demo project on how to create a realtime presence web application using SurrealDB Live Queries.
- SurrealDB Sandbox - An offline browser-based playground for experimenting with SurrealDB.
- SurrealDB x OpenAI - Example of RAG using SurrealDB and OpenAI.
- SurrealML vs PyTorch vs ONNX - Benchmarking the performance of SurrealML against PyTorch and ONNX - Vladimir Rotariu