#notion-api #api-client #maintained #fork #offical

rusticnotion

Notion Offical API client library for rust, maintained fork

1 unstable release

0.5.2 Feb 8, 2024

#711 in Web programming

MIT license

99KB
2.5K SLoC

rusticnotion

Build Crates.io

Notion Offical API client library for rust.

Maintained fork, based on the awesome jakeswenson/notion.

Under active development.

How to use

Right now we are working on Version 0.6.0 with the goal to fix all current issues in jakeswenson/notion and make the library compatible with the latest version of the Notion API (2022-06-28).

During this phase we recommend using git for linking the library to your project.

rusticnotion = { git = "https://github.com/snuna/rusticnotion.git" }

Once Version 0.6.0 is released, we will publish the library to crates.io.

rusticnotion = "0.6.0"

Docs

The generated documentation site is available here: https://docs.rs/rusticnotion/

Building

cargo build

Testing

To run integration tests, a env variable of NOTION_API_TOKEN must be set. You can use the provided token in example.env by duplicating it to .env.

You can also create your own token here with minimal permissions. And duplicating this test page into your notion workspace. And then giving your integration only access to this page.

NOTE: While making the integration tests more useful, the template will probably change a lot.

# Run all tests
cargo test

# Run tests with tracing enabled
RUST_LOG=debug cargo test

# Run tests without integration tests (offline)
cargo test --lib

Contributing

Contributions are always welcome! If you have an idea, it's best to float it by us before working on it to ensure no effort is wasted. If there's already an open issue for it, knock yourself out.

If you have any questions, feel free to use Discussions. Please don't hesitate to ask questions!

Dependencies

~8–22MB
~321K SLoC