The Rust for Gnucash
rucash provides a simple interface to GnuCash files stored in xml and SQL (sqlite3, PostgreSQL and MySQL).
use rucash::{Book, SQLiteQuery};
#[tokio::main]
async fn main() {
let query = SQLiteQuery::new("tests/db/sqlite/complex_sample.gnucash").unwrap();
let book = Book::new(query).await.unwrap();
let accounts = book.accounts();
}
# Cargo.toml
[dependencies]
rucash = { version = "0.5", features = [ "sqlite", "decimal" ] }
sqlite
: Add support for the self-contained SQLite database engine.postgresql
: Add support for the Postgres database server.mysql
: Add support for the MySQL database server.xml
: Add support for xml.decimal
: Add support for Decimal.