# base64-cli [![crates.io version](https://img.shields.io/crates/v/base64-cli.svg)](https://crates.io/crates/base64-cli) [![crates.io downloads](https://img.shields.io/crates/d/base64-cli.svg)](https://crates.io/crates/base64-cli) A CLI tool for base64 which supports both native and WebAssembly *Note: This project is a fork of the original Rust implementation: [rust-base64](https://github.com/marshallpierce/rust-base64).* ## Installation You can install this using the `cargo install` command: ```bash $ cargo install base64-cli ``` ### WebAssembly This application also provides a wasm package. You can install it using [`wapm`](https://wapm.io/help/install) by the following command: ```bash $ wapm install ken-matsui/base64 ``` ## Usage ```bash $ base64-cli --help base64-cli 0.1.0 A CLI tool for base64 USAGE: base64 OPTIONS: -h, --help Print help information -V, --version Print version information SUBCOMMANDS: decode Decode base64 string to string encode Encode string to base64 string help Print this message or the help of the given subcommand(s) ``` ### WebAssembly ```bash $ wapm run base64 --help base64-cli 0.1.0 A CLI tool for base64 USAGE: base64 OPTIONS: -h, --help Print help information -V, --version Print version information SUBCOMMANDS: decode Decode base64 string to string encode Encode string to base64 string help Print this message or the help of the given subcommand(s) ``` ## Examples ### encode ```bash $ base64-cli encode hello aGVsbG8= ``` ### decode ```bash $ base64-cli decode aGVsbG8= hello ``` ### WebAssembly #### encode ```bash $ wapm run base64 encode hello aGVsbG8= ``` #### decode ```bash $ wapm run base64 decode aGVsbG8= hello ``` ## Contribution ### Build ```bash $ cargo build ``` Or you can directly execute the binary: ```bash $ cargo run ``` #### WebAssembly ```bash $ rustup target add wasm32-wasi $ cargo build --target wasm32-wasi $ wasmer run target/wasm32-wasi/debug/base64-cli.wasm encode hello ``` ### Test This command can also test C API. ```bash $ cargo build $ cargo test ``` ### Publish #### [GitHub Releases](https://github.com/ken-matsui/base64-cli/tags) ```bash $ git tag v0.1.0 $ git push origin v0.1.0 ``` #### [crates.io](https://crates.io/) ```bash $ cargo publish ``` #### [wapm.io](https://wapm.io/) ```bash $ cargo build --release --target wasm32-wasi $ wapm publish ```