2 unstable releases
0.2.0 | Jan 9, 2024 |
---|---|
0.1.0 | Jan 7, 2024 |
#2 in #furry
41KB
747 lines
fluffyf
fluffyf is pretty much a rust library and application implementing API requests to E621/E926 with the primary focus of downloading posts and pools.
Before anything, please read E926's API documentation, it helps, trust me.
If you're new to asynchronous programming in Rust (like me), you should read the async book, and maybe even tokio's tutorial.
Current State
fluffyf
is currently
- barely usable
- missing a lot of features
- still lackluster in proper async implementation
- severely underdocumented
fluffyget
is currently
- lacking pool fetching
- can't handle file based input
- etc
fluffypost
is currently unusable and not ready yet
Installation
The entire fluffyf project consists of two parts: library and binary.
Library
Add the following to your Cargo.toml
:
[dependencies]
fluffyf = "0.1"
Binary
Run the following on your favorite shell:
$ cargo install fluffyf
and assuming that you have added $HOME/.cargo/bin
to PATH:
$ fluffyget --help
should output a help message.
Features
Features can be enabled through Cargo.toml
, either by:
[dependencies]
fluffyf = { version = "0.1", features = ["rate-limit"] }
or:
[dependencies]
[dependencies.fluffyf]
default-features = false
features = ["rate-limit"]
version = "0.1"
Versioning
Regarding versioning and breaking changes.
SemVer
This project uses Semantic Versioning 2.0.0. However, as of January 2024, this project has not reached
version 1.0.0
yet.
As such, expect extreme amounts of breaking changes per minor version changes
MSRV
Due to the nature of async programming in Rust, fluffyf is almost forced to use a very high (or "cutting-edge") minimum supported Rust version.
Note: after 1.0.0
, MSRV changes will only happen every major version change.
Changelogging
This project follows keep a changelog version 1.1.0.
License
This project is under a dual license of:
- BSD 2-Clause License
- Apache License, Version 2.0
at Your (as per Apache 2.0 License) option.
Unless explicitly stated otherwise, any Contribution made by any Contributor to the Work shall be implicitly dual licensed as stated above.
Some Attribution
@nasso, @playfulkittykat for rate_limit
in rs621
This Project is Under Construction 🚧
Create an issue, pull request (if you know how to implement the feature) or contact me directly if you have a suggestion.
Dependencies
~8–24MB
~290K SLoC