Crates.io | firerust |
lib.rs | firerust |
version | 1.0.1 |
source | src |
created_at | 2022-04-15 17:05:38.821335 |
updated_at | 2022-04-15 18:44:06.030317 |
description | A simple library for Realtime Database of Firebase. |
homepage | https://github.com/danieldimbarre/Firerust.git |
repository | https://github.com/danieldimbarre/Firerust.git |
max_upload_size | |
id | 568575 |
size | 78,586 |
A very simple library to implement the Firebase real-time database in your code with the best performance
Add this to your Cargo.toml
:
[dependencies]
firerust = { version = "1" }
Import firerust
use firerust::FirebaseClient;
Initialize a Firebase client without auth
FirebaseClient::new("https:///<DATABASE_NAME>.firebaseio.com/")?;
Initialize a Firebase client with auth
let mut client = FirebaseClient::new("https:///<DATABASE_NAME>.firebaseio.com/")?;
client.auth("<ID_TOKEN>");
A basic example of data fetch:
use firerust::FirebaseClient;
use serde_json::Value;
let client = FirebaseClient::new("https://docs-examples.firebaseio.com/")?;
let reference = client.reference("/");
println!("{:?}", reference.get::<Value>());
A basic example of data set:
use firerust::FirebaseClient;
let client = FirebaseClient::new("https://docs-examples.firebaseio.com/")?;
let reference = client.reference("/");
reference.set(serde_json::json!({
"message": "Setting data"
}))?;
A basic example of data update:
use firerust::FirebaseClient;
let client = FirebaseClient::new("https://docs-examples.firebaseio.com/")?;
let reference = client.reference("/");
reference.update(serde_json::json!({
"message": "Updating data"
}))?;
A basic example of data deletion:
use firerust::FirebaseClient;
let client = FirebaseClient::new("https://docs-examples.firebaseio.com/")?;
let reference = client.reference("/");
reference.delete()?;
A snapshot event example:
use firerust::FirebaseClient;
use serde_json::Value;
let client = FirebaseClient::new("https://docs-examples.firebaseio.com/")?;
let reference = client.reference("/");
reference.on_snapshot(| data: Value | {
println!("{:?}", data);
Ok(())
})?;