A client library for You Need A Budget's API.
You Need A Budget (YNAB) is a service with the goal of helping users "stop living paycheck to paycheck, get out of debt, and save more money."
This project is not endorsed or maintained by YNAB.
Stability / ready-for-prod-ness
Tip: Look at the version of this crate for a rough idea (currently 0.0.1)
Not ready for production use!
- There is little-to-no error handling currently (so your application may abort if something goes wrong)
- There are no automated tests (unit, integration, fuzzing, etc.)
Development of this library is done on the "stable" distribution channel using Rust
Building this codebase
In the root of the project (the directory containing
$ cargo build
Running the examples
This project has a number of examples meant to illustrate the capabilities of the library.
Currently they all require you to provide an authentication token and the ID of the budget to work with via environment variables.
$ TOKEN=<your personal access token here> BUDGET_ID=<your budget's ID here> cargo run --features=rfc5545 --example=icalendar_rrules
To generate a personal access token go to your developer settings in YNAB.
The budget ID can be found by in the URL while you are viewing your budget as usual.
For example the URL might be https://app.youneedabudget.com/889283ca-e89c-4407-a244-826102837984/budget so the budget ID is
Using this project as a dependency
In your project add the following to the
[dependencies] section of your manifest (
ynab = "0.0.1"
After doing so your manifest may look similar to:
[package] name = "my-cool-project" version = "0.1.0" [dependencies] ynab = "0.0.1"
Tip: You can use
cargo-edit to easily manage dependencies (for example:
cargo add ynab)
The cargo features this crate provides are as follows:
RecurFrequency::as_rfc5545_rulewhich produces an
rfc5545::RecurrenceRule(see the rfc5545 crate for more information)
Who uses this crate
- The not-yet-available WhenCash service