#http-request #http #request #client

ruxios

Ruxios is an HTTP library for Rust, inspired by Axios, with a simple yet robust interface

1 unstable release

0.1.2 Oct 19, 2023
0.1.1 Oct 19, 2023
0.1.0 Oct 19, 2023

#399 in HTTP client

MIT license

22KB
596 lines

Ruxios 🚀

Ruxios is a lightweight yet powerful HTTP request library for Rust. Inspired by libraries like Axios, Ruxios provides a straightforward but mighty interface for your Rust applications.

Build Status Crates.io Version Documentation License

📦 Installation

Add this to your Cargo.toml:

[dependencies]
ruxios = { version = "0.1.2" }
tokio = { version = "1.33.0", features = ["full"] }
serde = { version = "1.0.189", features = ["derive"] }
serde_json = "1.0.107"

🚀 Quick Start

use ruxios::prelude::*;

let api = Ruxios::from(RuxiosConfig {
    base_url: String::from("https://api.mysite.com"),
    ..Default::default()
});

let res = api.get::<Value, Value>("/my-route").await;

match res {
    Ok(res) => println!("{:?}", res.data),
    Err(err) => println!("{:?}", err),
}

💡 Features

  • Clear and concise HTTP methods.
  • Support for custom types for requests and responses.
  • Simplified error handling.
  • fetch! macro for quick GET requests.

📖 Documentation

For a deeper dive, check out our full documentation.

🌱 Contributing

  1. Fork the repository.
  2. Create a new branch for your changes: git checkout -b my-new-feature.
  3. Commit your changes: git commit -am 'Add some feature'.
  4. Push to the branch: git push origin my-new-feature.
  5. Submit a pull request.

📝 License

This library is licensed under the MIT License. See the LICENSE file for details.

Dependencies

~7–22MB
~264K SLoC