SapphireDb logo SapphireDb

SapphireDb

A self-hosted, easy to use realtime database

Open Source
SapphireDb and all implementations are OpenSource
Easy to use
All features are well designed and easy to use. Development never was easier
Technology support
This library aims to support many technologies and brings a consistent and easy to use API to all of them

What is it?

SapphireDb is a self-hosted, easy to use realtime database for Asp.Net Core and EF Core.


It creates a generic API you can easily use with different clients to effortlessly create applications with realtime data synchronization. SapphireDb should serve as a self hosted alternative to firebase realtime database and firestore on top of .Net.

Quick example

\f:(typescript:JS) db.collection('entries').values().subscribe(console.table); \f:(typescript:Angular) values$: Observable<any>;\n\n constructor(private db: SapphireDbService) {\n \tthis.values$ = this.db.collection('entries').values();\n }
[]

All features you need

SapphireDb includes:

Dead simple configuration

SapphireDb is very easy to configure and to use. It is aimed to bring results and not to waste time you could better use for own features. You can easily extend an existing application using EntityFrameworkCore.

Get started

Broad support

SapphireDb aims to support many technologies and brings a consistent and easy to use API to all of them. It is built on top of modern technologies like Entity Framework Core, Websockets and utilizes programming paradigms like reactive programming.

Supported technologies

Self hosted

Self host your application and keep the control of everything. No third party services are required.

Offline support

SapphireDb enables you to easily develop applications with full offline support.

Learn more

CRUD operations

SapphireDb already implements the CRUD operations so you dont need to care about Creating, Reading, Updating and Deleting data on server side.

Learn more

Model validation

SapphireDb includes server side model validation.

Learn more

Database support

Because SapphireDb is an extension for Entity Framework Core it also supports all database systems supported by EF Core.

Learn more

Supports joins/includes

SapphireDb supports joins/includes what makes it very easy to get an object with all related data to your clients.

Learn more

Complex queries

SapphireDb allows clients to create complex queries using prefilters. It is possible to filter, order, aggregate and much more with simple pieces of code. All queries are executed on server side.

Learn more

Actions

SapphireDb adds support for actions. Actions are server methods that can be called through the communication pipeline. Also supports async methods and async streaming of data.

Learn more

Authorization included

SapphireDb comes with lots of features to secure you application and data. It also comes with a login provider.

Learn more

Messaging

SapphireDb includes an easy to use topic based messaging API to send data from and to clients.

Learn more

Scalable

SapphireDb supports running in multiple instances and therefore allows easy scaling.

Learn more

Support

SapphireDb is an open source library and absolutely free of costs for you. If you like the project you are welcome to support it.

Become a patron

Supported technologies

.NET Core Logo

.NET

Unofficial JavaScript logo 2

Javascript

Angular full color logo

Angular

Node.js logo

Node.js

React-icon

React

Svelte Logo

Svelte

This website uses Google Analytics. If you want to disable it just unselect the option: