All Projects → ziyasal → Firesharp

ziyasal / Firesharp

Licence: unlicense
An asynchronous cross-platform .Net library for Firebase

Projects that are alternatives of or similar to Firesharp

Standard.licensing
Easy-to-use licensing library for .NET Framework, Mono, .NET Core, and Xamarin products
Stars: ✭ 239 (-60.23%)
Mutual labels:  xamarin, mono
PCLExt.FileStorage
Portable Storage APIs
Stars: ✭ 35 (-94.18%)
Mutual labels:  xamarin, mono
uno.toolkit.ui
A set of custom controls for the WinUI and the Uno Platform not offered out of the box by WinUI, such as Card, TabBar, NavigationBar, etc.
Stars: ✭ 45 (-92.51%)
Mutual labels:  xamarin, mono
Forms Gtk Progress
Xamarin.Forms GTK Backend Progress
Stars: ✭ 166 (-72.38%)
Mutual labels:  xamarin, mono
Gray hat csharp code
This repository contains full code examples from the book Gray Hat C#
Stars: ✭ 301 (-49.92%)
Mutual labels:  xamarin, mono
Cppsharp
Tools and libraries to glue C/C++ APIs to high-level languages
Stars: ✭ 2,221 (+269.55%)
Mutual labels:  xamarin, mono
ably-dotnet
.NET, Xamarin and Mono client library SDK for Ably realtime messaging service
Stars: ✭ 32 (-94.68%)
Mutual labels:  xamarin, mono
Xamarin Forms Gtk Movies Sample
The Movie DB Xamarin.Forms Sample
Stars: ✭ 83 (-86.19%)
Mutual labels:  xamarin, mono
Tensorflowsharp
TensorFlow API for .NET languages
Stars: ✭ 3,027 (+403.66%)
Mutual labels:  xamarin, mono
Httwrap
General purpose, simple but useful HttpClient wrapper for .NET & Xamarin/Mono
Stars: ✭ 39 (-93.51%)
Mutual labels:  xamarin, mono
Megaapiclient
MegaApiClient is a C# .Net library to access http://mega.co.nz / http://mega.nz cloud storage and file hosting service.
Stars: ✭ 151 (-74.88%)
Mutual labels:  xamarin, mono
Mvvmcross
The .NET MVVM framework for cross-platform solutions, including Xamarin.iOS, Xamarin.Android, Windows and Mac.
Stars: ✭ 3,594 (+498%)
Mutual labels:  xamarin, mono
Managed Midi
[Past project] Cross-platform MIDI processing library for mono and .NET (ALSA, CoreMIDI, Android, WinMM and UWP).
Stars: ✭ 130 (-78.37%)
Mutual labels:  xamarin, mono
Uno.playground
Source code for the Uno Gallery apps and Uno Playground (made in Wasm)
Stars: ✭ 184 (-69.38%)
Mutual labels:  xamarin, mono
Crossplatformdisktest
Windows, macOS and Android storage (HDD, SSD, RAM) speed testing/performance benchmarking app
Stars: ✭ 123 (-79.53%)
Mutual labels:  xamarin, mono
Portable-WebDAV-Library
Moved to codeberg.org - https://codeberg.org/DecaTec/Portable-WebDAV-Library - The Portable WebDAV Library is a strongly typed, async WebDAV client library which is fully compliant to RFC 4918, RFC 4331 and "Additional WebDAV Collection Properties". It is implemented as .NETStandard 1.1 library in oder to be used on any platform supporting .NETS…
Stars: ✭ 45 (-92.51%)
Mutual labels:  xamarin, mono
Uno.ch9
Ch9 - Uno Reference Implementation project
Stars: ✭ 45 (-92.51%)
Mutual labels:  xamarin, mono
Socketclusterclientdotnet
C# client for socketcluster framework in node.js
Stars: ✭ 60 (-90.02%)
Mutual labels:  xamarin, mono
AppRopio.Mobile
AppRopio - mobile apps builder for iOS/Android based on Xamarin
Stars: ✭ 16 (-97.34%)
Mutual labels:  xamarin, mono
Firebasepushnotificationplugin
Firebase Push Notification Plugin for Xamarin iOS and Android
Stars: ✭ 307 (-48.92%)
Mutual labels:  firebase, xamarin

Fire#

Firebase REST API wrapper for the .NET & Xamarin.

Changes are sent to all subscribed clients automatically, so you can update your clients in realtime from the backend.

AppVeyor Build status Coverage Status Stories in Ready

IMPORTANT : v1 docs moved here.

Installation (NuGet)

//**Install v2**
Install-Package FireSharp

//**Install v1**
Install-Package FireSharp -Version 1.1.0

Usage

FirebaseClient uses Newtonsoft.Json by default.

How can I configure FireSharp?


  IFirebaseConfig config = new FirebaseConfig
  {
     AuthSecret = "your_firebase_secret",
     BasePath = "https://yourfirebase.firebaseio.com/"
  };
IFirebaseClient  client = new FirebaseClient(config);

So far, supported methods are :

Set

var todo = new Todo {
                name = "Execute SET",
                priority = 2
            };
SetResponse response = await _client.SetAsync("todos/set", todo);
Todo result = response.ResultAs<Todo>(); //The response will contain the data written

Push

 var todo = new Todo {
                name = "Execute PUSH",
                priority = 2
            };
PushResponse response =await  _client.PushAsync("todos/push", todo);
response.Result.name //The result will contain the child name of the new data that was added

Get

 FirebaseResponse response = await _client.GetAsync("todos/set");
 Todo todo=response.ResultAs<Todo>(); //The response will contain the data being retreived

Update

var todo = new Todo {
                name = "Execute UPDATE!",
                priority = 1
            };

FirebaseResponse response =await  _client.UpdateAsync("todos/set", todo);
Todo todo = response.ResultAs<Todo>(); //The response will contain the data written

Delete

FirebaseResponse response =await  _client.DeleteAsync("todos"); //Deletes todos collection
Console.WriteLine(response.StatusCode);

Listen Streaming from the REST API

EventStreamResponse response = await _client.OnAsync("chat", (sender, args, context) => {
       System.Console.WriteLine(args.Data);
});

//Call dispose to stop listening for events
response.Dispose();

Release Notes

2.1

  • Firesharp now is a Net Standard library, so it's available for every platform.

2.0

  • Use Microsoft HTTP Client Libraries instead of RestSharp
  • FireSharp is now Portable Library
  • Supports Streaming from the REST API (Firebase REST endpoints support the EventSource / Server-Sent Events protocol.)
  • It is fully asynchronous and designed to be non-blocking

More information about Firebase and the Firebase API is available at the official website.

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].