All Projects → SapphireDb → Sapphiredb

SapphireDb / Sapphiredb

Licence: mit
SapphireDb Server, a self-hosted, easy to use realtime database for Asp.Net Core and EF Core

Projects that are alternatives of or similar to Sapphiredb

Vuefire
🔥 Firebase bindings for Vue.js & Vuex
Stars: ✭ 3,234 (+892.02%)
Mutual labels:  database, firebase, firestore, realtime
React Native Firebase
🔥 A well-tested feature-rich modular Firebase implementation for React Native. Supports both iOS & Android platforms for all Firebase services.
Stars: ✭ 9,674 (+2867.48%)
Mutual labels:  database, firebase, firestore, realtime-database
Combinefirebase
Combine wrapper on Google's iOS Firebase library.
Stars: ✭ 126 (-61.35%)
Mutual labels:  database, firebase, firestore
Space Cloud
Open source Firebase + Heroku to develop, scale and secure serverless apps on Kubernetes
Stars: ✭ 3,323 (+919.33%)
Mutual labels:  database, firebase, realtime
Pushpin
Proxy server for adding push to your API
Stars: ✭ 3,050 (+835.58%)
Mutual labels:  websockets, realtime, server-sent-events
Event Reduce
An algorithm to optimize database queries that run multiple times
Stars: ✭ 589 (+80.67%)
Mutual labels:  database, realtime-database, realtime
Scaffolder
Database scaffolding tool
Stars: ✭ 102 (-68.71%)
Mutual labels:  database, core, net-core
Model
Ruby persistence framework with entities and repositories
Stars: ✭ 399 (+22.39%)
Mutual labels:  entity-framework, entity, database
Kotlin Firebase Group Chat
Group and OneonOne chat using firebase built in Kotlin similar to whatsapp.
Stars: ✭ 44 (-86.5%)
Mutual labels:  firebase, realtime-database, realtime
Filecontextcore
FileContextCore is a "Database"-Provider for Entity Framework Core and adds the ability to store information in files instead of being limited to databases.
Stars: ✭ 91 (-72.09%)
Mutual labels:  entity-framework, database, net
Angelo
Sinatra-like DSL for Reel that supports WebSockets and SSE
Stars: ✭ 303 (-7.06%)
Mutual labels:  websockets, realtime, server-sent-events
Firebase Instagram
📸 Instagram clone with Firebase Cloud Firestore, Expo, and React Native 😁😍
Stars: ✭ 389 (+19.33%)
Mutual labels:  database, firebase, firestore
Reactfire
Hooks, Context Providers, and Components that make it easy to interact with Firebase.
Stars: ✭ 2,908 (+792.02%)
Mutual labels:  firebase, firestore, realtime-database
Tiledesk Dashboard
The Tiledesk dashboard. Tiledesk is an Open Source Live Chat platform written in NodeJs, firebase and Angular.
Stars: ✭ 53 (-83.74%)
Mutual labels:  firebase, firestore, realtime
ormdb
ORM tool for .Net / .Net.Core
Stars: ✭ 14 (-95.71%)
Mutual labels:  core, net, net-core
Rxdb
🔄 A client side, offline-first, reactive database for JavaScript Applications
Stars: ✭ 16,670 (+5013.5%)
Mutual labels:  database, realtime-database, realtime
Fsfirestore
Functional F# library to access Firestore database hosted on Google Cloud Platform (GCP) or Firebase.
Stars: ✭ 22 (-93.25%)
Mutual labels:  firebase, firestore, core
Nativescript Plugin Firebase
🔥 NativeScript plugin for Firebase
Stars: ✭ 990 (+203.68%)
Mutual labels:  firebase, firestore, realtime-database
Dnczeus
DncZeus 是一个基于ASP.NET Core 3 + Vue.js(iview-admin) 的前后端分离的通用后台权限(页面访问、操作按钮控制)管理系统框架。后端使用.NET Core 3 + Entity Framework Core构建,UI则是目前流行的基于Vue.js的iView(iview-admin)。项目实现了前后端的动态权限管理和控制以及基于JWT的用户令牌认证机制,让前后端的交互更流畅。码云镜像:https://gitee.com/rector/DncZeus 。演示地址(demo):
Stars: ✭ 1,104 (+238.65%)
Mutual labels:  entity-framework, aspnet, net-core
geo-smart-system
Open Source Realtime Tracking System
Stars: ✭ 36 (-88.96%)
Mutual labels:  realtime, sse, server-sent-events

SapphireDb - Server for Asp.Net Core Build Status

FOSSA Status

SapphireDb logo

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.

Check out the documentation for more details: Documentation

Features

  • 🔧 Dead simple configuration
  • 📡 Broad technology support
  • 💻 Self hosted
  • 📱 Offline support
  • 💾 Easy to use CRUD operations
  • ⚡️ Model validation
  • ✔️ Database support
  • 📂 Supports joins/includes
  • ➿ Complex server evaluated queries
  • 🔌 Actions
  • 🔑 Authorization included
  • ✉️ Messaging
  • 🌐 Scalable

Learn more

Installation

Install package

To install the package execute the following command in your package manager console

PM> Install-Package SapphireDb

You can also install the extension using Nuget package manager. The project can be found here: https://www.nuget.org/packages/SapphireDb/

Configure DbContext

You now have to change your DbContext to derive from SapphireDbContext.

// Change DbContext to SapphireDbContext
public class MyDbContext : SapphireDbContext
{
  public MyDbContext(DbContextOptions<MyDbContext> options) : base(options)
  {

  }

  public DbSet<User> Users { get; set; }

  public DbSet<Test> Tests { get; set; }
}

Register services and update pipeline

To use the SapphireDb you also have to make some changes in your Startup.cs-File.

public class Startup
{
  public void ConfigureServices(IServiceCollection services)
  {
    //Register services
    services.AddSapphireDb(...)
      .AddContext<MyDbContext>(cfg => ...);
  }

  public void Configure(IApplicationBuilder app)
  {
    //Add Middleware
    app.UseSapphireDb();
  }
}

Examples

Server

AspNet Core Example

Client

React Example

Svelte Example

NodeJs Example

Angular Example

Documentation

Check out the documentation for more details: Documentation

Implementations/Packages

Server

SapphireDb - Server for Asp.Net Core

SapphireDb.RedisSync

SapphireDb.HttpSync

Client

sapphiredb - JS client (JS, NodeJs, React, Svelte, ...)

ng-sapphiredb - Angular client

Author

Morris Janatzek (morrisjdev)

Licenses

SapphireDb - MIT License

sapphiredb-js - MIT License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].