Encode and decode information as meows
Project description
baseMEOW
baseMEOW is an encoder/decoder that can store binary as a string of characters that spell out "meow" in some way, similar to base64
.
Installation
# requires Python 3.6+
pip install baseMEOW
Usage
Encoding
$ echo 'hello' | baseMEOW
MeEeeOoWmEeooWwmmEeowwwWw
$ echo 'im a kitty' | baseMEOW
MeEeOwWMeeEEEoOOwwWWWmMmeOoOwMEooWMeeOWwMMMmM
$ dd if=/dev/urandom bs=1 count=30 | baseMEOW
30+0 records in
30+0 records out
30 bytes transferred in 0.000061 secs (491520 bytes/sec)
MMmeEOOowMEOWMMmEOowMEeEeEOWwwmeOOOooWmMmMMMeeeowwWmMMeEEOOWWWmmEOoOowwmmeoOWMmMmeEooWMEEeoWwmeOoOoOWWwWWmeEEoOOwWmmeoOwW
Decoding
$ echo 'MeEeeOoWmEeooWwmmEeowwwWw' | baseMEOW --decode
hello
$ echo 'MeEeOwWMeeEEEoOOwwWWWmMmeOoOwMEooWMeeOWwMMMmM' | baseMEOW --decode
im a kitty
$
# non UTF-8 data is printed as hex
$ echo 'MMmeEOOowMEOWMMmEOowMEeEeEOWwwmeOOOooWmMmMMMeeeowwWmMMeEEOOWWWmmEOoOowwmmeoOWMmMmeEooWMEEeoWwmeOoOoOWWwWWmeEEoOOwWmmeoOwW' | baseMEOW --decode
2ecb7fc9edeabe3d085a810f2618cc11eaccfbeae47cb6f6ab28786193e6
Benchmarks
See benchmark.py
test case | base64 runtime (ms) | baseMEOW runtime (ms) | base64 size (bytes) | baseMEOW size (bytes) |
---|---|---|---|---|
10 characters | 11.06 | 202.69 | 17 | 42 |
1000 characters | 12.05 | 168.23 | 1337 | 4002 |
10000 characters | 11.57 | 159.92 | 13337 | 40002 |
1000000 characters | 34.74 | 2500.45 | 1333337 | 4000002 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
baseMEOW-1.0.0.tar.gz
(3.1 kB
view details)
File details
Details for the file baseMEOW-1.0.0.tar.gz
.
File metadata
- Download URL: baseMEOW-1.0.0.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 653322d910e657062b491a8476a1e6c0cb0f0da459daece42ebb497a8b320ac1 |
|
MD5 | 1fb92086f3ca6bbc53b29f091633724f |
|
BLAKE2b-256 | 20df696dc566cf726d6e0f9eb79e441b8fee0b58a61ac8670167271e64abba0c |