libbasen

c++20 encoding/decoding from arbitrary base

Packaging status latest packaged version(s)

Contents

Installation

Package

Packaging status

Make

For cli tool you should have argparse as make dependency.

Install:

make -j $(nproc)
sudo make i USRDIR=(Your installation dir)

Uninstall:

sudo make uni USRDIR=(Your installation dir)

CMake

For using as dependency only (without cli tool, test, coverage, docs)

include(FetchContent)
FetchContent_Declare(
    basen
    GIT_REPOSITORY https://github.com/vSEK1RO/libbasen.git
    GIT_TAG        latest
)
FetchContent_MakeAvailable(basen)

target_link_libraries(MyProject PRIVATE basen::basen)

Documentation

Available here

Usage

libbasen package provides basen cli tool. Below are examples of use:

echo "hello world" | basen -t hex > encoded.data
basen -t hex -d < encoded.data > decoded.data
echo "arbitrary alphabet" | basen -a "0123ABCD"

Contributing

Main branch is under protection rules, so you should create pull request. After merging will be runned authors.sh for adding all contributors usernames and their number of commits to AUTHORS file.

Now we would like to implement the following features:

  • Base32
  • BCH
  • Bech32

For build with with debug flags:

make -j $(nproc) DEBUG=

For build tests (needed gtest package as dependency):

make tests -j $(nproc) DEBUG=

For generating coverage:

make cover -j $(nproc) DEBUG=

⬆️ Contents

Description
encoding/decoding from arbitrary base
Readme 532 KiB
Languages
C++ 88.9%
HTML 8.3%
Meson 2.3%
Shell 0.5%