1 unstable release
0.1.7 | May 30, 2023 |
---|---|
0.1.6 |
|
#1853 in Algorithms
Used in ifunny-basic
11KB
76 lines
easy_base64
Simple, small and fast, dependency free base64 encoder/decoder.
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
About The Project
I have created a library for people who simply need to encode and decode data to and from Base64 with a straightforward API. The purpose of this library is to reduce the time between when a person discovers the library and when they start using it. Additionally, the aim is to avoid burdening the project with extra dependencies and increasing compilation time.
Getting Started
Just add new dependencie in your Cargo.toml file.
- Cargo.toml
[dependencies] easy_base64 = "0.1"
Usage
use easy_base64::{decode, encode};
fn main() {
let decoded_b64 = decode(b"U3U=");
println!("Decoded: {}", String::from_utf8(decoded_b64).unwrap());
let encoded_b64 = encode(b"Su");
println!("Encoded: {}", encoded_b64);
// if you have String
let decoded_b64 = decode(String::from("U3U=").as_bytes());
println!("Decoded: {}", String::from_utf8(decoded_b64).unwrap());
let encoded_b64 = encode(String::from("Su").as_bytes());
println!("Encoded: {}", encoded_b64);
}
Why encode return a String, but decode return a bytes?
Because base64 encoded the result always contains valid printable string symbols. But if was encoded binary data, then decode result not will be valid string.
For more examples, please refer to the Documentation
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE.txt
for more information.
Contact
Bogdan Lipovtsev - megafreelancer2012@gmail.com
Project Link: https://github.com/zaqxsw-dev/easy_base64