- Notifications
You must be signed in to change notification settings - Fork29
The Everything is Real-Time C# Backend for Single Page Applications
License
firesharkstudios/butterfly-server
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
The Everything is Real-Time C# Backend for Single Page Applications
Butterfly.Server is a set of packages that can be used separatelyor can be used together to create integrated solutions to createmodern web apps with a C# backend. The purpose of this repo is to show examples of how to use the components together.
Butterfly.Server is especially well suited to powering SPAs (single page applications) by providing...
- ARESTlike API enabling clients to receive static data and perform actions
- ASubscription API enabling clients to automatically receive real-time updates when data changes
- ADatabase API that avoids object-relational mappings and publishes data change events
- AMessaging API that provides a consistent API to send emails and texts
Butterfly.Server consists of the following components...
- Butterfly.Auth - Authenticate clients usingButterfly.Db andButterfly.Web
- Butterfly.Client - Clients (javascript and .NET) that can subscribe real-time updates from a Butterfly.Web server
- Butterfly.Db - Reactive database SELECTs for popular relational databases
- Butterfly.Message - Send emails and text messages via the same API
- Butterfly.Util - Collection of utility classes and methods
- Butterfly.Web - Simple RESTlike and Subscription API server
Butterfly.Server...
- Targets.NET Framework 2.1 (.NET Core 3.0)
- Fully supports async/await
- Doesnot depend on ASP.NET
- Doesnot use polling for real-time updates
Please star this project if you find it interesting
The following examples are a good way to understand how to use theButterfly.Server components...
- Butterfly.Example.Contacts - Shows a Vue.js web client managing a set of contacts by interacting with aButterfly.Server
- Butterfly.Example.DbEvents - Shows how to perform basic database operations and see generated data events
- Butterfly.Example.Echo - Shows a "Hello World" alert box in a client
- Butterfly.Example.RealtimeStreamingChart - Shows a client with a real-time streaming chart updated from a server (usesSmoothie Charts)
- Butterfly.Example.Todos - Shows a Vue.js web client managing a set of to-dos by interacting with aButterfly.Server
Get the source from these repos...
Build Hero is a collaborative tool for general contractors, subcontractors, and customers to collaborate on remodel projects. Themy.buildhero.io site and the Android app are all powered byButterfly.Server.
MotionAlerts.ai is a tool that uses AI to filter security camera alerts.. Themy.motionalerts.ai site and the Android app are all powered byButterfly.Server.
Notice in the production apps above how everything updates in real-time across all connected clients when changes happen.
The code is licensed under theMozilla Public License 2.0.
About
The Everything is Real-Time C# Backend for Single Page Applications
Topics
Resources
License
Code of conduct
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors4
Uh oh!
There was an error while loading.Please reload this page.