philomena

Crates.iophilomena
lib.rsphilomena
version0.5.2
created_at2025-10-05 18:32:12.347063+00
updated_at2025-10-05 19:01:22.061695+00
descriptionAn async Philomena client for Rust
homepagehttps://github.com/philomena-dev/philomena-rs
repositoryhttps://github.com/philomena-dev/philomena-rs
max_upload_size
id1869310
size169,595
Nighty (Meow)

documentation

README

philomena-rs

Rust MIT License Crates.io

A client for Philomena (the software that powers boorus such as Furbooru and Derpibooru) written in Rust. The APIs for Philomena instances is near identical, so this crate can work with most of them; however it is optimized for mainline Philomena. Any time new Philomena versions change the API, this crate will follow these changes.

Usage is simple:

let user_agent = format!(
  "{}/{} ({}, +{})",
  env!("CARGO_PKG_NAME"),
  env!("CARGO_PKG_VERSION"),
  std::env::var("API_USERNAME").unwrap(),
  env!("CARGO_PKG_REPOSITORY"),
);

let cli = philomena::Client::new(
  "https://furbooru.org/",
  user_agent,
  std::env::var("API_TOKEN").unwrap(),
)?

Set the environment variables API_USERNAME and API_TOKEN to your username and API token respectively. Adding the username associated with your bot to each request can help the booru staff when your bot does unwanted things like violating rate limits.

See the examples for more ideas.

Commit count: 0

cargo fmt