Packages

Elixir library for translating between bottom and human-readable text.

Current section

Files

Jump to
bottom README.md
Raw

README.md

# Bottom
[![Hex Version](http://img.shields.io/hexpm/v/bottom.svg)](https://hex.pm/packages/bottom)
This is an Elixir implementation of [bottom](https://github.com/kaylynn234/bottom).
Bottom encodes UTF-8 text into a sequence comprised of bottom emoji (`πŸ«‚βœ¨πŸ₯Ίβ€οΈ`, with `,` sprinkled in for good measure) followed by `πŸ‘‰πŸ‘ˆ`. It can encode any valid UTF-8 β€” being a bottom transcends language, after all β€” and decode back into UTF-8.
## Installation
The package can be installed by adding `bottom` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:bottom, "~> 0.2.0"}
]
end
```
## Basic Usage
```elixir
iex> Bottom.encode("Hello world!")
{:ok, "πŸ’–βœ¨βœ¨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆβœ¨βœ¨βœ¨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨πŸ₯Ί,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ‘‰πŸ‘ˆβœ¨βœ¨βœ¨,,,πŸ‘‰πŸ‘ˆ"}
iex> Bottom.decode("πŸ’–βœ¨βœ¨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆβœ¨βœ¨βœ¨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨πŸ₯Ί,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ‘‰πŸ‘ˆβœ¨βœ¨βœ¨,,,πŸ‘‰πŸ‘ˆ")
{:ok, "Hello world!"}
```
## Documentation
Documentation can be found on [HexDocs](https://hexdocs.pm/bottom/index.html). See the docs for the [Bottom module](https://hexdocs.pm/bottom/Bottom.html) specifically.
## Other Libraries
* Reference implementation: https://github.com/kaylynn234/bottom
* Python bindings: https://github.com/uYert/bottom-py
* Haskell implementation: https://github.com/LyricLy/bottom-hs
* C implementation: https://github.com/LyricLy/bottom-c
* Java implementation: https://github.com/SebbyLaw/bottom-java
* Web translator: https://kaylynn234.github.io/bottom-web