Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-gleam
π― A collection of Gleam libraries, projects, and resources
https://github.com/gleam-lang/awesome-gleam
Last synced: 4 days ago
JSON representation
-
Websites
- gleam.run - Gleam's website and introductory guide
-
Talks
- Introduction to Gleam - [Harry Bairstow](https://github.com/harryet)
- Distributed music programming with Gleam, BEAM, and the Web Audio API - [Hayleigh Thompson](https://github.com/hayleigh-dot-dev)
-
Resources
-
Social Media
- #gleamlang hashtag
- @gleamlang - The official twitter account.
- r/gleamlang
- @louispilfold - The creator of Gleam.
-
Courses
- Exercism's Gleam track - Crowd-sourced code mentorship. Practice having thoughtful conversations about code.
- tanklesxl/gladvent - An `Advent of Code` runner for Gleam, targeting Erlang.
- Exercism's Gleam track - Crowd-sourced code mentorship. Practice having thoughtful conversations about code.
-
Talks
- I learned Gleam in a week. Here's how it went - [Theo Harris](https://github.com/Theosaurus-Rex)
-
Websites
- tour.gleam.run - Gleam's interactive tour and tutorial.
- gleamweekly.com - A weekly newsletter of handpicked articles and community news.
- gloogle.run - A search engine for the Gleam ecosystem.
-
-
Erlang/OTP
- midas-framework/beam - Interoperating with specific functionality in the Erlang runtime (BEAM).
-
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
- pog - [π](https://hexdocs.pm/pog/) - A PostgreSQL database client for Gleam, based on PGO
- 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.
- chip - [π](https://hexdocs.pm/chip/) - A Gleam registry library
- nessie_cluster - [π](https://hexdocs.pm/nessie_cluster/) - A small DNS clustering library for Gleam applications.
-
Error Handling
-
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
- ansel - [π](https://hexdocs.pm/ansel/) - A simple and fast vips image processing library for Gleam!
-
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
-
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
- 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
- rank - [π](https://hexdocs.pm/rank/) - Ordinals for numbers, e.g. 1st, 2nd, 3rd
-
Time
- rada - [π](https://hexdocs.pm/rada/) - A library for dates with no times or time zones
- gtz - [π](https://hexdocs.pm/gtz/) - A timezone data provider for Gleam!
- birl - [π](https://hexdocs.pm/birl/) - Date / Time handling for Gleam
- gtempo - [π](https://hexdocs.pm/gtempo/) - A lightweight and Gleamy datetime library!
-
Validation
-
Web frameworks
-
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
-
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! β¨
- hexdocs_offline - [π](https://hexdocs.pm/hexdocs_offline/) - Download an offline version of the hexdocs of your projects dependencies to a local folder!
-
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
-
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
-
Compilers
- gleam-lang/gleam - The Gleam compiler.
- gleam-lang/example-lisp-interpreter - A toy Lisp interpreter in Gleam.
- gleam-lang/example-lisp-interpreter - A toy Lisp interpreter in Gleam.
-
Web applications
- gleam-lang/example-todomvc - A serverside only implementation of Todo MVC written in Gleam!
- gleam-lang/example-echo-server - An example Gleam web application.
- aosasona/jsorm - A minimal JSON explorer in Gleam + HTMX.
- ghivert/gloogle - A search engine for the Gleam ecosystem, built in Lustre + Wisp.
- gleam-lang/packages - The Gleam package index website.
-
-
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
-
Web applications
- gleam-lang/gleam.vim - Gleam support for Vim/Neovim.
- gleam-lang/gleam-mode - An emacs major mode for the Gleam programming language.
- gleam-lang/vscode-gleam - Gleam support for VS Code.
- digitalcora/sublime-text-gleam - Gleam support for Sublime Text.
- sbdchd/neoformat - A Vim/Neovim plugin for formatting code with support for `gleam format`.
- itsgreggreg/language-gleam - Gleam language support in Atom.
- DannyLettuce/gleam_gedit - Gleam syntax support for Gedit (and other GtkSourceView editors).
-
Programming Languages
Categories
Sub Categories
Web applications
15
Frontend
12
Data Structures
11
Databases
11
Text
11
Erlang and OTP
9
Command Line
9
Logging and Monitoring
6
Cryptography
6
Configuration
6
Formats
6
Testing
5
SDKs
5
API Clients
5
HTML
5
Gleam
4
Parsing
4
JavaScript
4
Time
4
Standards
4
HTTP Clients
4
Websites
4
Social Media
4
File System
3
Randomness
3
Networking
3
Compilers
3
Project Tooling
3
Numbers
3
Validation
3
HTTP Servers
3
Email
3
Courses
3
Error Handling
3
HTTP
2
Templating
2
JSON
2
Web frameworks
2
Machine Learning
2
Graphics
2
Build Tooling
2
Push Notifications
1
Talks
1
Benchmarking
1
Keywords
gleam
64
erlang
22
gleam-lang
19
javascript
9
deno
6
frontend
5
postgresql
5
beam
5
elixir
5
nodejs
5
gleam-language
5
functional-programming
4
bun
4
monad
3
postgresql-client
3
editor-plugin
3
lustre
3
example
2
webapp
2
backend
2
wisp
2
snippets
2
vim
2
community-contributions-accepted
2
machine-learning
2
server
2
http
2
http-client
2
cli
2
web-framework
2
web
2
date
2
logging
2
testing
2
pretty-printer
2
error-handling
2
email
2
data-structures
2
types
2
stdin
2
stdio
2
tools
2
multiset
1
tries
1
snapshot-testing
1
templating-engine
1
database-client
1
sqlite
1
templating
1
plunk
1