Skip to main content

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


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)

Uploaded Source

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

Hashes for baseMEOW-1.0.0.tar.gz
Algorithm Hash digest
SHA256 653322d910e657062b491a8476a1e6c0cb0f0da459daece42ebb497a8b320ac1
MD5 1fb92086f3ca6bbc53b29f091633724f
BLAKE2b-256 20df696dc566cf726d6e0f9eb79e441b8fee0b58a61ac8670167271e64abba0c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page