Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thegoldenpro/aghpb.rs
Anime girls holding programming books API wrapper for 🦀 Rust.
https://github.com/thegoldenpro/aghpb.rs
aghpb anime anime-girls anime-girls-holding-programming-books
Last synced: 2 months ago
JSON representation
Anime girls holding programming books API wrapper for 🦀 Rust.
- Host: GitHub
- URL: https://github.com/thegoldenpro/aghpb.rs
- Owner: THEGOLDENPRO
- License: mit
- Created: 2023-08-01T00:54:13.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-02-07T18:05:13.000Z (11 months ago)
- Last Synced: 2024-10-11T16:19:20.687Z (2 months ago)
- Topics: aghpb, anime, anime-girls, anime-girls-holding-programming-books
- Language: Rust
- Homepage: https://crates.io/crates/aghpb
- Size: 534 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🦀 aghpb.rs 📚
Rust API wrapper for the anime girls holding programming books [API](https://api.devgoldy.xyz/aghpb/v1/docs)[![Crates.io](https://img.shields.io/crates/v/aghpb?style=flat)](https://crates.io/crates/aghpb)
[![docs.rs](https://img.shields.io/docsrs/aghpb?style=flat)](https://docs.rs/aghpb)
> [!Note]
>
> This is part of my [aghpb api](https://github.com/THEGOLDENPRO/aghpb_api) wrapper challenge where I attempt to write an api wrapper in every language possible. So yes expect spaghetti code as it will be my first time writing in these languages. Although I'm 100% open to improvements and corrections so feel free to contribute anything.
> **[Other languages I've done](https://github.com/THEGOLDENPRO/aghpb_api#-api-wrappers)**## Install
```rust
cargo add aghpb
```
More install instructions at [crates.io](https://crates.io/crates/aghpb).## Examples
Dependencies:
```toml
[dependencies]
aghpb = "1.4.1"
tokio = { version = "1.36.0", features = ["full"] }
```
This is how you may retrieve a random anime girls holding programming books:
```rust
use tokio::fs;
use std::error::Error;#[tokio::main]
async fn main() -> Result<(), Box> {
let book = aghpb::random(None).await?;println!("Name: {}", book.name);
println!("Category: {}", book.category);
println!("Date added: {}", book.date_added);fs::write("./anime_girl.png", book.raw_bytes).await?;
Ok(())
}
```
You can also retrieve specific categories of anime girls holding programming books like so:
```rust
let book = aghpb::random(Some("rust".into())).await?;
```
This is how you may retrieve a list of available categories:
```rust
use std::error::Error;#[tokio::main]
async fn main() -> Result<(), Box> {
let categories = aghpb::categories().await?;for category in categories {
println!("{}", category);
}Ok(())
}
```
How to search for an anime girl holding a programming book.
> [!NOTE]
> NEW in v1.4!
```rust
use std::error::Error;use tokio::fs;
#[tokio::main]
async fn main() -> Result<(), Box> {
let books = aghpb::search("tohru".into(), None, None).await?;let book_data = &books[0]; // I'm selecting the first book just for this example.
println!("Name: {}", book_data.name);
println!("Category: {}", book_data.category);
println!("Commit Author: {}", book_data.commit_author);
println!("Commit URL: {}", book_data.commit_url);
println!("Date Added: {}", book_data.date_added);
println!("Search ID: {}", book_data.search_id);let book = book_data.get_book().await?;
fs::write("./anime_girl.png", book.raw_bytes).await?;
Ok(())
}
```Made using my API at 👉 https://api.devgoldy.xyz/aghpb/v1/