<commit_before>[![Build Status](https://travis-ci.org/noseglid/canumb.png?branch=master)](https://travis-ci.org/noseglid/canumb)

# Canumb - it's a name

Canumb aims to crunch data on various forms and turn them into something meaningful.
A various of formats are currently supported, such different number base conversions
(decimal to hexadecimal, binary to hexadecimal, octal to decimal, etc),
various encoded format (base64 encoder decoder, uri encoder decoder).
It's build in way to allow for extension when more input types are required.

## Features

### Base conversion

The following conversions are available ([TL;DR][TLDR]: all conversions between base 2 (binary), 8 (octal), 10 (decimal) and 16 (hexadecimal)):

  * Binary to Octal
  * Binary to Decimal
  * Binary to Hexadecimal
  * Octal to Binary
  * Octal to Decimal
  * Octal to Hexadecimal
  * Decimal to Binary
  * Decimal to Octal
  * Decimal to Hexadecimal
  * Hexadecimal to Binary
  * Hexadecimal to Octal
  * Hexadecimal to Decimal


Canumb supports [arbitrary precision][ArbitraryPrecision],
you may convert a number of any size. Well, the algorithm is slow so
less than 1000 digits. But that's still very large numbers.
Very useful for those long network protocol bit-streams.

Only unsigned numbers at this point, feel free to help out improve support.

### Encoding and Decoding

Supported encodings:

 * [base64][EncodingBase64]
 * [uri][EncodingUri] (Also knows as percent-encoding)

## See it in action
It includes a hefty web frontend which makes usage easy. Single-page
applications seems to be the latest buzz right now, and so this follows
that vision. It is [hosted at heroku for your leisure][CanumbAtHeroku].

## Contribute
Just make a pull request and your contribution will be considered (and assuming it's useful, merged) as soon as possible. This'll get your name on the contributors list aswell.

### Contributors
* `<NAME> <<EMAIL> at <EMAIL>>`

[CanumbAtHeroku]: https://canumb.herokuapp.com
[ArbitraryPrecision]: http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic
[EncodingBase64]: http://en.wikipedia.org/wiki/Base64
[EncodingUri]: http://en.wikipedia.org/wiki/Percent-encoding
[TLDR]: http://en.wikipedia.org/wiki/Wikipedia:Too_long;_didn't_read<commit_msg>README updated<commit_after>[![Build Status](https://travis-ci.org/noseglid/canumb.png?branch=master)](https://travis-ci.org/noseglid/canumb)

# Canumb - it's a name

Canumb aims to crunch data on various forms and turn them into something meaningful.
A variety of inputs are currently supported, such different number base conversions
(decimal to hexadecimal, binary to hexadecimal, octal to decimal, etc),
various encoded format (base64 encoder decoder, uri encoder decoder).
It's build in way to allow for extension when the future demands other input formats
to be crunched..

## See it in action
It includes a hefty web frontend which makes usage easy. [Single-page
applications][SinglePageApp] seems to be the latest buzz right now, and so this follows
that vision. It is [hosted at heroku for your leisure][CanumbAtHeroku].

## Features

### Base conversion

The following conversions are available ([TL;DR][TLDR]: all conversions between base 2 (binary), 8 (octal), 10 (decimal) and 16 (hexadecimal)):

  * Binary to Octal
  * Binary to Decimal
  * Binary to Hexadecimal
  * Octal to Binary
  * Octal to Decimal
  * Octal to Hexadecimal
  * Decimal to Binary
  * Decimal to Octal
  * Decimal to Hexadecimal
  * Hexadecimal to Binary
  * Hexadecimal to Octal
  * Hexadecimal to Decimal

Canumb supports [arbitrary precision][ArbitraryPrecision],
you may convert a number of any size. Well, the algorithm is slow so
less than 1000 digits. But that's still very large numbers.
Very useful for those long network protocol bit-streams.

The binary output may also be aligned (both the service and the frontend supports this),
so you can group them for easier digestion. Typically 8 bits (1 byte) per group.

Only unsigned numbers at this point, feel free to help out improve support.

### Encoding and Decoding

Supported encodings:

 * [base64][EncodingBase64]
 * [uri][EncodingUri] (Also knows as percent-encoding)

## Contribute
Just make a pull request and your contribution will be considered (and assuming it's useful, merged) as soon as possible. This'll get your name on the contributors list aswell.

### Contributors
* `<NAME> <<EMAIL>>`

[CanumbAtHeroku]: https://canumb.herokuapp.com
[ArbitraryPrecision]: http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic
[EncodingBase64]: http://en.wikipedia.org/wiki/Base64
[EncodingUri]: http://en.wikipedia.org/wiki/Percent-encoding
[TLDR]: http://en.wikipedia.org/wiki/Wikipedia:Too_long;_didn't_read
[SinglePageApp]: http://singlepageappbook.com/
{'fraction_non_alphanumeric': 0.08755760368663594, 'fraction_numerical': 0.008797653958944282, 'mean_word_length': 4.801944106925881, 'pattern_counts': {'":': 0, '<': 10, '<?xml version=': 0, '>': 10, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '159377', 'n_tokens_mistral': 1487, 'n_tokens_neox': 1370, 'n_words': 566}