SapphireDb 3.1.5-alpha
A self-hosted, easy to use realtime database
Install-Package SapphireDb -Version 3.1.5-alpha
dotnet add package SapphireDb --version 3.1.5-alpha
<PackageReference Include="SapphireDb" Version="3.1.5-alpha" />
paket add SapphireDb --version 3.1.5-alpha
SapphireDb - Server for Asp.Net Core 
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
- :wrench: Dead simple configuration
- :satellite: Broad technology support
- :computer: Self hosted
- :iphone: Offline support
- :floppy_disk: Easy to use CRUD operations
- :zap: Model validation
- :heavy_check_mark: Database support
- :open_file_folder: Supports joins/includes
- :loop: Complex server evaluated queries
- :electric_plug: Actions
- :key: Authorization included
- :envelope: Messaging
- :globe_with_meridians: Scalable
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
Client
Documentation
Check out the documentation for more details: Documentation
Implementations/Packages
Server
SapphireDb - Server for Asp.Net Core
Client
sapphiredb - JS client (JS, NodeJs, React, Svelte, ...)
ng-sapphiredb - Angular client
Author
Licenses
SapphireDb - MIT License
sapphiredb-js - MIT License
SapphireDb - Server for Asp.Net Core 
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
- :wrench: Dead simple configuration
- :satellite: Broad technology support
- :computer: Self hosted
- :iphone: Offline support
- :floppy_disk: Easy to use CRUD operations
- :zap: Model validation
- :heavy_check_mark: Database support
- :open_file_folder: Supports joins/includes
- :loop: Complex server evaluated queries
- :electric_plug: Actions
- :key: Authorization included
- :envelope: Messaging
- :globe_with_meridians: Scalable
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
Client
Documentation
Check out the documentation for more details: Documentation
Implementations/Packages
Server
SapphireDb - Server for Asp.Net Core
Client
sapphiredb - JS client (JS, NodeJs, React, Svelte, ...)
ng-sapphiredb - Angular client
Author
Licenses
SapphireDb - MIT License
sapphiredb-js - MIT License
Dependencies
-
.NETCoreApp 3.1
- Microsoft.AspNetCore.Authorization (>= 3.1.1)
- Microsoft.AspNetCore.Http (>= 2.2.2)
- Microsoft.AspNetCore.Http.Features (>= 3.1.1)
- Microsoft.AspNetCore.WebSockets (>= 2.2.1)
- Microsoft.EntityFrameworkCore (>= 3.1.1)
- Newtonsoft.Json (>= 12.0.3)
Used By
NuGet packages (2)
Showing the top 2 NuGet packages that depend on SapphireDb:
Package | Downloads |
---|---|
SapphireDb.RedisSync
Redis sync module for SapphireDb
|
|
SapphireDb.HttpSync
Http sync module for SapphireDb
|
GitHub repositories
This package is not used by any popular GitHub repositories.
Version History
Version | Downloads | Last updated |
---|---|---|
3.1.5-alpha | 145 | 10/26/2020 |
3.1.4-alpha | 102 | 10/26/2020 |
3.1.3-alpha | 63 | 10/26/2020 |
3.1.2-alpha | 103 | 10/26/2020 |
3.1.1-alpha | 257 | 8/2/2020 |
3.1.0-alpha | 101 | 8/2/2020 |
3.0.0 | 9,327 | 7/25/2020 |
2.2.1 | 113 | 7/22/2020 |
2.2.0 | 787 | 6/20/2020 |
2.1.3 | 162 | 4/4/2020 |
2.1.2 | 174 | 4/3/2020 |
2.1.1 | 145 | 3/24/2020 |
2.1.0 | 254 | 3/21/2020 |
2.0.0 | 211 | 2/24/2020 |
1.5.0 | 137 | 2/18/2020 |
1.4.0 | 241 | 2/8/2020 |
1.3.0 | 172 | 1/21/2020 |
1.2.0 | 166 | 1/15/2020 |
1.1.6 | 139 | 1/13/2020 |
1.1.5 | 162 | 1/7/2020 |
1.1.4 | 226 | 1/7/2020 |
1.1.3 | 142 | 1/6/2020 |
1.1.1 | 209 | 1/4/2020 |
1.1.0 | 245 | 1/3/2020 |
1.0.7 | 187 | 1/2/2020 |
1.0.6 | 198 | 12/27/2019 |
1.0.5 | 156 | 12/22/2019 |
1.0.4 | 137 | 12/18/2019 |
1.0.3 | 153 | 12/9/2019 |
1.0.2 | 139 | 12/8/2019 |
1.0.1 | 157 | 12/8/2019 |
1.0.0 | 149 | 12/4/2019 |