{"id":17086409,"url":"https://github.com/dasch/crockford","last_synced_at":"2025-09-23T20:49:25.542Z","repository":{"id":57674967,"uuid":"218255844","full_name":"dasch/crockford","owner":"dasch","description":"An implementation of Crockford's base32 in Elm","archived":false,"fork":false,"pushed_at":"2019-11-12T14:37:41.000Z","size":48,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-02T15:47:49.207Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://package.elm-lang.org/packages/dasch/crockford/latest/","language":"Elm","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dasch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-29T09:58:57.000Z","updated_at":"2019-11-12T14:37:43.000Z","dependencies_parsed_at":"2022-09-02T14:25:25.984Z","dependency_job_id":null,"html_url":"https://github.com/dasch/crockford","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/dasch/crockford","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dasch%2Fcrockford","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dasch%2Fcrockford/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dasch%2Fcrockford/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dasch%2Fcrockford/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dasch","download_url":"https://codeload.github.com/dasch/crockford/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dasch%2Fcrockford/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276647750,"owners_count":25679621,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-23T02:00:09.130Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-14T13:28:34.424Z","updated_at":"2025-09-23T20:49:25.507Z","avatar_url":"https://github.com/dasch.png","language":"Elm","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Crockford's base32 encoding in Elm\n\nEncode integers as [Crockford-style base32 strings](https://www.crockford.com/base32.html).\n\nFrom the specification:\n\n\u003e Base 32 is a textual 32-symbol notation for expressing numbers in a form that can be conveniently and accurately transmitted between humans and computer systems. It can be used for out of band communication of public keys.\n\u003e\n\u003e The encoding scheme is required to\n\u003e\n\u003e   - Be human readable and machine readable.\n\u003e   - Be compact. Humans have difficulty in manipulating long strings of arbitrary symbols.\n\u003e   - Be error resistant. Entering the symbols must not require keyboarding gymnastics.\n\u003e   - Be pronounceable. Humans should be able to accurately transmit the symbols to other humans using a telephone.\n\nThis package provides functions for encoding and decoding base32 data.\n\n## Examples\n\n```elm\n-- Encodes a non-negative integer as a base32 string according to Crockford's encoding scheme.\nCrockford.encode 1337 --\u003e Ok \"19S\" : Result Crockford.Error String\n\n-- Decodes a base32 string into a non-negative integer.\nCrockford.decode \"19S\" --\u003e Ok 1337 : Result Crockford.Error Int\n\n-- Negative integers cannot be encoded.\nCrockford.encode -1 --\u003e Err NegativeNumberError : Result Crockford.Error String\n```\n\nIt's also possible to have a checksum number appended to the string when encoded. This checksum number will be used to validate the correctness of the encoded number when decoding.\n\n```elm\nCrockford.encodeWithChecksum 32 --\u003e Ok \"10*\" : Result Crockford.Error String\n\nCrockford.decodeWithChecksum \"10*\" --\u003e Ok 32 : Result Crockford.Error Int\n\nCrockford.decodeWithChecksum \"10~\" --\u003e Err Crockford.InvalidChecksum : Result Crockford.Error Int\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdasch%2Fcrockford","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdasch%2Fcrockford","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdasch%2Fcrockford/lists"}