Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-gleam

πŸ’― A collection of Gleam libraries, projects, and resources
https://github.com/gleam-lang/awesome-gleam

Last synced: 1 day ago
JSON representation

  • Websites

    • gleam.run - Gleam's website and introductory guide
  • Talks

  • Resources

  • Erlang/OTP

  • Packages

    • API Clients

      • glatus - [πŸ“š](https://hexdocs.pm/glatus/) - Gleam bindings to the API of the Gatus health check tool
      • gleam_hexpm - [πŸ“š](https://hexdocs.pm/gleam_hexpm/) - Gleam dynamic decoders for the API of Hex, the package manager for the BEAM ecosystem.
      • glevatar - [πŸ“š](https://hexdocs.pm/glevatar/) - Easily create Gravatar URLs in Gleam
      • aws4_request - [πŸ“š](https://hexdocs.pm/aws4_request/) - An AWS Signature Version 4 client implementation, used for S3 auth, etc
      • tallgrass - [πŸ“š](https://hexdocs.pm/tallgrass/) - Gleam wrapper for the PokeAPI.
    • Benchmarking

      • gleamy_bench - [πŸ“š](https://hexdocs.pm/gleamy_bench/) - A library for benchmarking gleam code.
    • Build Tooling

      • esgleam - [πŸ“š](https://hexdocs.pm/esgleam/) - esbuild for Gleam
      • gleescript - [πŸ“š](https://hexdocs.pm/gleescript/) - Bundle your Gleam-on-Erlang project into an escript, a single executable file!
    • Command Line

      • argv - [πŸ“š](https://hexdocs.pm/argv/) - A cross platform library for getting the command line arguments
      • gleam_community_ansi - [πŸ“š](https://hexdocs.pm/gleam_community_ansi/) - ANSI colours, formatting, and control codes
      • glint - [πŸ“š](https://hexdocs.pm/glint/) - Gleam command line argument parsing with basic flag support.
      • glitzer - [πŸ“š](https://hexdocs.pm/glitzer/) - Progress bars for gleam.
      • shellout - [πŸ“š](https://hexdocs.pm/shellout/) - A Gleam library for cross-platform shell operations
      • spinner - [πŸ“š](https://hexdocs.pm/spinner/) - Animated progress spinners for your console
      • stdin - [πŸ“š](https://hexdocs.pm/stdin/) - Provides a synchronous iterator for consuming stdin. It supports all the non-browser targets, Erlang, Node, Deno, and Bun.
      • stdin - [πŸ“š](https://hexdocs.pm/stdin/) - Provides a synchronous iterator for consuming stdin. It supports all the non-browser targets, Erlang, Node, Deno, and Bun.
      • clip - [πŸ“š](https://hexdocs.pm/clip/) - A CLI Option Parser for Gleam
    • Configuration

      • dot_env - [πŸ“š](https://hexdocs.pm/dot_env/) - Load environment variables from files
      • envoy - [πŸ“š](https://hexdocs.pm/envoy/) - A zero dependency cross platform Gleam package for reading environment variables
      • gleam_dotenv - [πŸ“š](https://hexdocs.pm/gleam_dotenv/) - dotenv for Gleam
      • glenv - [πŸ“š](https://hexdocs.pm/glenv/) - A library for type-safe environment variable access.
      • glenvy - [πŸ“š](https://hexdocs.pm/glenvy/) - A pleasant way to interact with your environment.
      • gleam_dotenv - [πŸ“š](https://hexdocs.pm/gleam_dotenv/) - dotenv for Gleam
    • SDKs

      • bucket - [πŸ“š](https://hexdocs.pm/bucket/) - Gleam S3 API client, suitable for AWS S3, Garage, Minio, Storj, Backblaze B2, Cloudflare R2, Ceph, Wasabi, and so on!
      • openfeature - [πŸ“š](https://hexdocs.pm/openfeature/) - The Gleam SDK for the OpenFeature specification.
      • weapp - [πŸ“š](https://hexdocs.pm/weapp/) - Gleam bindings for wechat miniprogram, a.k.a weapp
      • wechat_dev_tools - [πŸ“š](https://hexdocs.pm/wechat_dev_tools/) - Tools to develop wechat miniprogram in gleam
      • bucket - [πŸ“š](https://hexdocs.pm/bucket/) - Gleam S3 API client, suitable for AWS S3, Garage, Minio, Storj, Backblaze B2, Cloudflare R2, Ceph, Wasabi, and so on!
    • Cryptography

      • beecrypt - [πŸ“š](https://hexdocs.pm/beecrypt/) - Buzzing Gleam bindings to the Erlang bcrypt hashing library
      • gleam_crypto - [πŸ“š](https://hexdocs.pm/gleam_crypto/) - A Gleam cryptography library supporting Erlang and JavaScript
      • ids - [πŸ“š](https://hexdocs.pm/ids/) - Unique IDs for Gleam
      • youid - [πŸ“š](https://hexdocs.pm/youid/) - Generate and parse UUIDs
      • kmh - [πŸ“š](https://hexdocs.pm/kmh/) - Implementation of Knuth’s multiplicative hashing (useful for ID obfuscation, etc.)
      • argus - [πŸ“š](https://hexdocs.pm/argus/) - Argon2 password hashing library for Gleam, based on the reference C implementation.
    • Data Structures

      • act - [πŸ“š](https://hexdocs.pm/act/) - Compose stateful actions to simulate mutable state
      • argamak - [πŸ“š](https://hexdocs.pm/argamak/) - A tensor library for the Gleam programming language
      • delay - [πŸ“š](https://hexdocs.pm/delay/) - A dead simple data-structure for delaying side effects
      • gleam_stdlib - [πŸ“š](https://hexdocs.pm/gleam_stdlib/) - A standard library for the Gleam programming language
      • glearray - [πŸ“š](https://hexdocs.pm/glearray/) - Immutable arrays for Gleam
      • gleither - [πŸ“š](https://hexdocs.pm/gleither/) - A small data-structure for representing an Either Monad
      • non_empty_list - [πŸ“š](https://hexdocs.pm/non_empty_list/) - Non-empty lists in Gleam
      • tote - [πŸ“š](https://hexdocs.pm/tote/) - Bags (or multisets) in Gleam
      • trie_again - [πŸ“š](https://hexdocs.pm/trie_again/) - Tries in Gleam
      • gleam_zlists - [πŸ“š](https://hexdocs.pm/gleam_zlists/) - A library for working with lazy lists in Gleam
      • glearray - [πŸ“š](https://hexdocs.pm/glearray/) - Immutable arrays for Gleam
    • Databases

      • cake - [πŸ“š](https://hexdocs.pm/cake/) - An SQL query builder for dialects PostgreSQL, SQLite, MariaDB, and MySQL
      • gleam_pgo - [πŸ“š](https://hexdocs.pm/gleam_pgo/) - Gleam bindings to the PGO PostgreSQL client
      • migrant - [πŸ“š](https://hexdocs.pm/migrant/) - Database migrations for SQLite in Gleam
      • mungo - [πŸ“š](https://hexdocs.pm/mungo/) - A MongoDB driver for Gleam (formerly gleam_mongo)
      • radish - [πŸ“š](https://hexdocs.pm/radish/) - A Redis client for Gleam
      • sqlight - [πŸ“š](https://hexdocs.pm/sqlight/) - Use SQLite from Gleam!
      • migrant - [πŸ“š](https://hexdocs.pm/migrant/) - [ALPHA] Database migrations for SQLite in Gleam
      • squirrel - [πŸ“š](https://hexdocs.pm/squirrel/) - 🐿️ Type safe SQL in Gleam
      • gleam_pgo - [πŸ“š](https://hexdocs.pm/gleam_pgo/) - Gleam bindings to the PGO PostgreSQL client
      • storail - [πŸ“š](https://hexdocs.pm/storail/) - A simple on-disc JSON based data store
    • Email

      • gleam_sendgrid - [πŸ“š](https://hexdocs.pm/gleam_sendgrid/) - Send emails from Gleam with SendGrid
      • plunk - [πŸ“š](https://hexdocs.pm/plunk/) - A Gleam library to send emails, manage contacts etc. using the Plunk API
      • zeptomail - [πŸ“š](https://hexdocs.pm/zeptomail/) - A wrapper for ZeptoMail's transactional email API
    • Erlang and OTP

      • carpenter - [πŸ“š](https://hexdocs.pm/carpenter/) - Bindings for Erlang's ETS tables. Forked and updated from gts.
      • gen_core_erlang - [πŸ“š](https://hexdocs.pm/gen_core_erlang/) - Generate Core Erlang from Gleam (wraps the Erlang cerl compiler module)
      • gleam_erlang - [πŸ“š](https://hexdocs.pm/gleam_erlang/) - A Gleam library for working with Erlang
      • gleam_otp - [πŸ“š](https://hexdocs.pm/gleam_otp/) - Fault tolerant multicore Gleam programs with OTP
      • process_waiter - [πŸ“š](https://hexdocs.pm/process_waiter/) - Wait for Erlang processes to exit
      • puddle - [πŸ“š](https://hexdocs.pm/puddle/) - A resource pool manager for gleam
      • shakespeare - [πŸ“š](https://hexdocs.pm/shakespeare/) - General-purpose OTP actors.
      • nessie_cluster - [πŸ“š](https://hexdocs.pm/nessie_cluster/) - A small DNS clustering library for Gleam applications.
    • Error Handling

      • exception - [πŸ“š](https://hexdocs.pm/exception/) - A tiny package for dealing with exceptions
      • snag - [πŸ“š](https://hexdocs.pm/snag/) - A boilerplate-free ad-hoc error type
      • snag - [πŸ“š](https://hexdocs.pm/snag/) - A boilerplate-free ad-hoc error type
    • File System

      • file_streams - [πŸ“š](https://hexdocs.pm/file_streams/) - Gleam library that provides access to native Erlang binary file streams.
      • filepath - [πŸ“š](https://hexdocs.pm/filepath/) - Work with file paths in Gleam!
      • simplifile - [πŸ“š](https://hexdocs.pm/simplifile/) - Basic file operations that work on all targets
    • Formats

      • commonmark - [πŸ“š](https://hexdocs.pm/commonmark/) - CommonMark implementation for Gleam, for the BEAM or JS
      • cymbal - [πŸ“š](https://hexdocs.pm/cymbal/) - Build YAML in Gleam!
      • gsv - [πŸ“š](https://hexdocs.pm/gsv/) - A simple csv parser and generator written in gleam
      • iso_8859 - [πŸ“š](https://hexdocs.pm/iso_8859/) - Gleam library to decode ISO/IEC 8859 binary data into native UTF-8 strings.
      • jot - [πŸ“š](https://hexdocs.pm/jot/) - A parser for Djot, a markdown-like language
      • tom - [πŸ“š](https://hexdocs.pm/tom/) - A pure Gleam TOML parser!
    • Frontend

      • glailglind - [πŸ“š](https://hexdocs.pm/glailglind/) - Gleam modules and functions for installing and invoking TailwindCSS
      • lustre - [πŸ“š](https://hexdocs.pm/lustre/) - An Elm-inspired framework for building web apps in Gleam!
      • lustre_http - [πŸ“š](https://hexdocs.pm/lustre_http/) - HTTP requests from lustre
      • lustre_ui - [πŸ“š](https://hexdocs.pm/lustre_ui/) - A collection of components and design tokens for building Lustre apps.
      • lustre_virtual_list - [πŸ“š](https://hexdocs.pm/lustre_virtual_list/) - A virtual list component for lustre.
      • lustre_websocket - [πŸ“š](https://hexdocs.pm/lustre_websocket/) - Web Socket requests from lustre
      • redraw - [πŸ“š](https://hexdocs.pm/redraw/) - React bindings for Gleam! Supports everything modern React provides, with full Gleam Type-Checking system!
      • sketch - [πŸ“š](https://hexdocs.pm/sketch/) - A CSS-in-Gleam package, made to work with frontend, and directly with lustre!
      • tardis - [πŸ“š](https://hexdocs.pm/tardis/) - Time traveller debugger, tailor-made for Lustre
      • lustre_animation - [πŸ“š](https://hexdocs.pm/lustre_animation/) - Animations for lustre, utilizing JS requestAnimationFrame and setTimeout
      • lustre_animation - [πŸ“š](https://hexdocs.pm/lustre_animation/) - Animations for lustre, utilizing JS requestAnimationFrame and setTimeout
      • grille_pain - [πŸ“š](https://hexdocs.pm/grille_pain/) - Toaster, made in lustre, for gleam
    • Gleam

      • glance_printer - [πŸ“š](https://hexdocs.pm/glance_printer/) - A pretty_printer for the glance AST
      • gleam_package_interface - [πŸ“š](https://hexdocs.pm/gleam_package_interface/) - Work with Gleam's package interfaces
      • glexer - [πŸ“š](https://hexdocs.pm/glexer/) - A lexer for Gleam source code
      • pprint - [πŸ“š](https://hexdocs.pm/pprint/) - Pretty print values with style!
    • Graphics

      • gleam_community_colour - [πŸ“š](https://hexdocs.pm/gleam_community_colour/) - Colour types, conversions, and other utilities
    • HTML

      • formal - [πŸ“š](https://hexdocs.pm/formal/) - Type safe HTML form decoding and validation!
      • glentities - [πŸ“š](https://hexdocs.pm/glentities/) - HTML entity encoder/decoder for Gleam
      • htmb - [πŸ“š](https://hexdocs.pm/htmb/) - A tiny HTML builder for Gleam
      • htmgrrrl - [πŸ“š](https://hexdocs.pm/htmgrrrl/) - Gleam bindings to htmerl, the fast and memory efficient Erlang HTML SAX parser.
      • nakai - [πŸ“š](https://hexdocs.pm/nakai/) - HTML generation for Gleam, on the server or anywhere else
    • JavaScript

      • javascript_dom_parser - [πŸ“š](https://hexdocs.pm/javascript_dom_parser/) - Bindings to the JavaScript DOMParser API
      • plinth - [πŸ“š](https://hexdocs.pm/plinth/) - Bindings to Node.js and browser platform APIs
      • conversation - [πŸ“š](https://hexdocs.pm/conversation/) - Gleam bindings for the standard JavaScript Request and Response APIs
      • gleam_javascript - [πŸ“š](https://hexdocs.pm/gleam_javascript/) - Work with JavaScript types and values in Gleam
    • Logging and Monitoring

      • flash - [πŸ“š](https://hexdocs.pm/flash/) - Gleam package enabling structured logging in both Erlang and JavaScript environments
      • glimt - [πŸ“š](https://hexdocs.pm/glimt/) - A Gleam library for logging
      • glog - [πŸ“š](https://hexdocs.pm/glog/) - A Gleam implementation of Erlang logger
      • logging - [πŸ“š](https://hexdocs.pm/logging/) - Configuration for the Erlang logger
      • stacky - [πŸ“š](https://hexdocs.pm/stacky/) - Stacky β˜† BEAM stack trace in Gleam
      • systemd_status - [πŸ“š](https://hexdocs.pm/systemd_status/) - Inspect the status of running systemd units
    • Parsing

      • nibble - [πŸ“š](https://hexdocs.pm/nibble/) - A string parsing library heavily inspired by elm/parser.
      • nibble - [πŸ“š](https://hexdocs.pm/nibble/) - A string parsing library heavily inspired by elm/parser.
      • gleamsver - [πŸ“š](https://hexdocs.pm/gleamsver/) - Comprehensive set of native Gleam utilities for handling SemVer 2.0.0 version strings.
      • stoiridh_version - [πŸ“š](https://hexdocs.pm/stoiridh_version/) - Semantic Versioning 2.0.0
    • Randomness

      • minigen - [πŸ“š](https://hexdocs.pm/minigen/) - Pure random data generation, appropriate for realistic simulations
      • blah - [πŸ“š](https://hexdocs.pm/blah/) - fake data generation for gleam
      • prng - [πŸ“š](https://hexdocs.pm/prng/) - A Pure Random Number Generator
    • Text

      • hug - [πŸ“š](https://hexdocs.pm/hug/) - Helpful and pretty CLI messages
      • justin - [πŸ“š](https://hexdocs.pm/justin/) - Convert between snake_case, camelCase, and other cases in Gleam
      • punycode - [πŸ“š](https://hexdocs.pm/punycode/) - Gleam implementation of punycode encoding and decoding
      • rank - [πŸ“š](https://hexdocs.pm/rank/) - Ordinals for numbers, e.g. 1st, 2nd, 3rd
      • humanise - [πŸ“š](https://hexdocs.pm/humanise/) - Easily format values for human readability!
      • dedent - [πŸ“š](https://hexdocs.pm/dedent/) - Remove shared indentation from a string
      • edit_distance - [πŸ“š](https://hexdocs.pm/edit_distance/) - A pure Gleam package to compute the edit distance of two strings
      • gap - [πŸ“š](https://hexdocs.pm/gap/) - A Gleam library for comparing strings/lists and producing a textual (styled) representation of the differences.
      • glam - [πŸ“š](https://hexdocs.pm/glam/) - A package to help you easily pretty print structured data
      • phonetic_gleam - [πŸ“š](https://hexdocs.pm/phonetic_gleam/) - A collection of gleam algorithms dealing with phonetics.
      • wink - [πŸ“š](https://hexdocs.pm/wink/) - A simple Gleam box drawing library
    • Time

      • rada - [πŸ“š](https://hexdocs.pm/rada/) - A library for dates with no times or time zones
      • birl - [πŸ“š](https://hexdocs.pm/birl/) - Date / Time handling for Gleam
      • gtempo - [πŸ“š](https://hexdocs.pm/gtempo/) - A Gleam library for controlling the tempo of your application through helpful date and time functions!
    • Validation

      • crossbar - [πŸ“š](https://hexdocs.pm/crossbar/) - Data validation library in pure Gleam
      • valid - [πŸ“š](https://hexdocs.pm/valid/) - A composable validation library for Gleam
      • valid - [πŸ“š](https://hexdocs.pm/valid/) - A composable validation library for Gleam
    • Web frameworks

      • glen - [πŸ“š](https://hexdocs.pm/glen/) - A peaceful web framework that targets JS.
      • wisp - [πŸ“š](https://hexdocs.pm/wisp/) - A practical web framework for Gleam
    • HTTP Clients

      • falcon - [πŸ“š](https://hexdocs.pm/falcon/) - A smoother way to make HTTP requests in Gleam with Axios-like methods
      • gleam_fetch - [πŸ“š](https://hexdocs.pm/gleam_fetch/) - Make HTTP requests in Gleam JavaScript with Fetch
      • gleam_hackney - [πŸ“š](https://hexdocs.pm/gleam_hackney/) - Gleam bindings to the Hackney HTTP client
      • gleam_httpc - [πŸ“š](https://hexdocs.pm/gleam_httpc/) - Gleam bindings to Erlang's built in HTTP client, httpc
    • Machine Learning

      • emel - [πŸ“š](https://hexdocs.pm/emel/) - Turn data into functions in the Erlang ecosystem
      • gleam_synapses - [πŸ“š](https://hexdocs.pm/gleam_synapses/) - A plug-and-play library for neural networks written in Gleam
    • HTTP

      • cors_builder - [πŸ“š](https://hexdocs.pm/cors_builder/) - A CORS Builder, performing validation and injection of CORS for misp, wisp and any framework!
      • gleam_http - [πŸ“š](https://hexdocs.pm/gleam_http/) - Types and functions for Gleam HTTP clients and servers
    • HTTP Servers

      • cgi - [πŸ“š](https://hexdocs.pm/cgi/) - Common Gateway Interface (CGI) in Gleam
      • gleam_elli - [πŸ“š](https://hexdocs.pm/gleam_elli/) - Run Gleam HTTP services with the Elli web server
      • mist - [πŸ“š](https://hexdocs.pm/mist/) - a misty Gleam web server
    • JSON

      • gleam_json - [πŸ“š](https://hexdocs.pm/gleam_json/) - Work with JSON in Gleam
      • json_typedef - [πŸ“š](https://hexdocs.pm/json_typedef/) - Work with JSON using a schema! RFC8927
    • Networking

      • glisten - [πŸ“š](https://hexdocs.pm/glisten/) - a shiny Gleam TCP/SSL server
      • mug - [πŸ“š](https://hexdocs.pm/mug/) - A TCP client for Gleam!
      • nessie - [πŸ“š](https://hexdocs.pm/nessie/) - Gleam bindings for Erlang's built-in DNS resolution modules.
    • Numbers

      • bigi - [πŸ“š](https://hexdocs.pm/bigi/) - Arbitrary precision integer arithmetic for Gleam
      • gleam_community_maths - [πŸ“š](https://hexdocs.pm/gleam_community_maths/) - A basic maths library
      • bigdecimal - [πŸ“š](https://hexdocs.pm/bigdecimal/) - Arbitrary precision decimal arithmetic for Gleam
    • Project Tooling

      • cactus - [πŸ“š](https://hexdocs.pm/cactus/) - A tool for managing git lifecycle hooks with ✨ gleam! Pre commit, Pre push and more!
      • go_over - [πŸ“š](https://hexdocs.pm/go_over/) - A tool to audit Erlang & Elixir dependencies, to make sure your gleam projects really sparkle! ✨
    • Push Notifications

      • wimp - [πŸ“š](https://hexdocs.pm/wimp/) - A Gleam client for the Pushover push notification API
    • Standards

      • glisbn - [πŸ“š](https://hexdocs.pm/glisbn/) - A ISBN utility library for Gleam.
      • marceau - [πŸ“š](https://hexdocs.pm/marceau/) - A MIME types library for Gleam
      • phony - [πŸ“š](https://hexdocs.pm/phony/) - An international phone number validator
      • dime - [πŸ“š](https://hexdocs.pm/dime/) - A ISO-4217 currency library for Gleam
    • Templating

      • glemplate - [πŸ“š](https://hexdocs.pm/glemplate/) - A simple template engine for Gleam
      • handles - [πŸ“š](https://hexdocs.pm/handles/) - Pure Gleam templating language inspired by Mustache and Handlebars.js
    • Testing

      • birdie - [πŸ“š](https://hexdocs.pm/birdie/) - Snapshot testing in Gleam
      • exercism_test_runner - [πŸ“š](https://hexdocs.pm/exercism_test_runner/) - A test framework for Gleam exercises on Exercism
      • glacier - [πŸ“š](https://hexdocs.pm/glacier/) - Gleam Incremental Interactive Unit Testing
      • gleeunit - [πŸ“š](https://hexdocs.pm/gleeunit/) - Gleam bindings to Erlang's EUnit test framework
      • testbldr - [πŸ“š](https://hexdocs.pm/testbldr/) - A library for programatically building and running test cases
    • Websites

      • lustre_ssg - [πŸ“š](https://hexdocs.pm/lustre_ssg/) - A simple static site generator for Lustre projects.
  • Projects

  • Tools

    • Web applications

      • michaeljones/matcha - A template system for Gleam
      • tynanbe/rad - A flexible task runner companion for the Gleam build manager.
      • inoas/glychee - A simple Gleam benchmark runner which wraps Benchee for the heavy lifting.
  • Editor support