#tauri-plugin #tauri #tauri-app #embedded-database #polodb

sys tauri-plugin-polodb

A Tauri plugin to expose the PoloDB embedded database to applications

1 unstable release

0.1.0 Sep 5, 2024

#1311 in Asynchronous

Download history 143/week @ 2024-09-02

143 downloads per month

MIT license

55KB
1.5K SLoC

Rust 1K SLoC TypeScript 463 SLoC // 0.0% comments TSX 115 SLoC JavaScript 29 SLoC

tauri-plugin-polodb

A Tauri plugin to expose the PoloDB embedded database to applications

Installation

To install the Rust plugin, run:

cargo add tauri-plugin-polodb

Then, load the plugin in your Tauri app as follows:

pub fn run() {
    tauri::Builder::default()
        .plugin(tauri_plugin_polodb::init()) // THIS LINE
        // More builder methods
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

Finally, install the JS client bindings:

yarn add tauri-plugin-polodb-api

Usage

In the Rust backend, all the PoloDB APIs can be accessed through the AppHandle as follows:

...
app.polodb().<methods>
...

On the client:

import {Database} from "tauri-plugin-polodb-api";

const db = await Database.open("example", "./data"); // Open a database
const collection = db.collection<{[key: string]: any}>("example_collection"); // Get a reference to a collection
console.log(await collection.find_all()); // Returns all records in the collection

For query syntax, reference the PoloDB documentation.

Dependencies

~40–86MB
~1.5M SLoC