bech32 alternatives and similar packages
Based on the "Web" category.
Alternatively, view bech32 alternatives based on common mentions on social networks and blogs.
-
scotty
Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp (Official Repository) -
haskell-bitmex-rest
swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. -
swagger-petstore
swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. -
servant
Main repository for the servant libraries — DSL for describing, serving, querying, mocking, documenting web applications and more! -
neuron
Future-proof note-taking and publishing based on Zettelkasten (superseded by Emanote: https://github.com/srid/emanote) -
airship
Helium + Webmachine = Airship. A toolkit for building declarative, RESTful web apps. -
haskell-kubernetes
Haskell bindings to the Kubernetes API (via swagger-codegen) -
apecs-gloss
a fast, extensible, type driven Haskell ECS framework for games -
digestive-functors
A general way to consume input using applicative functors -
servant-elm
Automatically derive Elm functions to query servant webservices -
tagsoup
Haskell library for parsing and extracting information from (possibly malformed) HTML/XML documents -
kubernetes-client-core
Haskell client for the kubernetes API. A work in progress. -
backprop
Heterogeneous automatic differentiation ("backpropagation") in Haskell -
engine-io
A Haskell server implementation of the Engine.IO and Socket.IO (1.0) protocols -
keera-hails-reactive-htmldom
Keera Hails: Haskell on Rails - Reactive Programming Framework for Interactive Haskell applications -
ghcjs-dom
Make Document Object Model (DOM) apps that run in any browser and natively using WebKitGtk
Clean code begins in your IDE with SonarLint
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of bech32 or a related project?
README
bech32
command-line
A small executable is available for rapid conversion in the console. You can obtain a pre-compiled bech32
binary for Linux, macOS, and Windows as part of the cardano-wallet
Releases.
Usage: bech32 [PREFIX]
Convert to and from bech32 strings. Data are read from standard input.
Available options:
-h,--help Show this help text
PREFIX An optional human-readable prefix (e.g. 'addr').
- When provided, the input text is decoded from
various encoding formats and re-encoded to
bech32 using the given prefix.
- When omitted, the input text is decoded from
bech32 to base16.
-v,--version output version information and exit
Supported encoding formats: Base16, Bech32 & Base58.
Examples
To Bech32:
$ bech32 base16_ <<< 706174617465
base16_1wpshgct5v5r5mxh0
$ bech32 base58_ <<< Ae2tdPwUPEYy
base58_1p58rejhd9592uusa8pzj2
$ bech32 new_prefix <<< old_prefix1wpshgcg2s33x3
new_prefix1wpshgcgeak9mv
From Bech32
$ bech32 <<< base16_1wpshgct5v5r5mxh0
706174617465
Bech32 Haskell Libraries
The repository provides Haskell libraries for working with the Bech32 address format, as specified by BIP-0173.
There are two libraries provided:
-
Core primitives for encoding and decoding Bech32 strings.
-
Template-Haskell specific extensions, including quasiquoters for compile-time parsing of string literals.
Contents
Documentation
For comprehensive instructions on how to use these libraries, see the Haddock documentation:
Usage
Encoding Data
>>> import Prelude
>>> import Codec.Binary.Bech32
>>> import Data.Text.Encoding
First, prepare a human-readable prefix:
>>> Right prefix = humanReadablePartFromText "example"
Next, prepare a data payload:
>>> messageToEncode = "Lorem ipsum dolor sit amet!"
>>> dataPart = dataPartFromBytes $ encodeUtf8 messageToEncode
Finally, produce a Bech32 string:
>>> encode prefix dataPart
Right "example1f3hhyetdyp5hqum4d5sxgmmvdaezqumfwssxzmt9wsss9un3cx"
Decoding Data
>>> import Prelude
>>> import Codec.Binary.Bech32
>>> import Data.Text.Encoding
First, decode the input:
>>> input = "example1f3hhyetdyp5hqum4d5sxgmmvdaezqumfwssxzmt9wsss9un3cx"
>>> Right (prefix, dataPart) = decode input
Next, examine the decoded human-readable prefix:
>>> humanReadablePartToText prefix
"example"
Finally, examine the decoded data payload:
>>> decodeUtf8 <$> dataPartToBytes dataPart
Just "Lorem ipsum dolor sit amet!"
Contributing
If you find a bug or you'd like to propose a feature, please feel free to raise an issue on our issue tracker.
Pull requests are welcome!
When creating a pull request, please make sure that your code adheres to our coding standards.
*Note that all licence references and agreements mentioned in the bech32 README section above
are relevant to that project's source code only.