/awesome-gleam

💯 A collection of Gleam libraries, projects, and resources

Primary LanguageGleam

Awesome Gleam

Have a Gleam project to share with the world? Make a pull request and add it to the list.

Looking for something to build? Check out the suggestions list.

Libraries

Ansi

  • dahlia-lib/dahlia - a simple text formatting package, inspired by the game Minecraft.

CLI

Cryptography

Databases

Data structures

Libraries that define generic data structures for use in Gleam projects.

Date and Time

Libraries for handling date and time

Email

Libraries for sending email.

Erlang/OTP

Libraries for working with Erlang and OTP.

Error handling

Libraries for working with errors and computations that can fail.

File IO

  • gleam-lang/erlang - Gleam's Erlang library contains a module for working with files and directories.

Generators

HTTP

HTTP clients

Libraries for making HTTP requests.

HTTP servers

Libraries for serving traffic over HTTP.

JSON

Logging

  • defgenx/glog - A Gleam implementation of an Erlang logger inspired by the Logrus API.
  • johnbjrk/glimt - A Gleam logging library with support for custom dispatchers/serializers.

Machine learning

Mimetypes

Parsing

Libraries for parsing different kinds of data.

Protocols

Science

  • nicklasxyz/gleam_stats - A Gleam mathematics and statistics library that is JavaScript and Erlang compatible.
  • tynanbe/argamak - A tensor library for Gleam's Erlang and JavaScript targets.

TCP/SSL

Templating

Libraries for rendering strings from templates.

Testing

Projects for testing Gleam code.

  • lpil/gleeunit - Gleam bindings to the Erlang EUnit test framework.
  • inoas/glacier - Gleam incremental interactive unit testing.

Text and numbers

Libraries for parsing and manipulating text and numbers.

  • greggreg/pretty_print - An implementation of Christian Lindig's "Strictly Pretty" pretty printing algorithm.
  • rvcas/ids - A library for generating unique ids such as a cuid or UUID.
  • sporto/gleam_string_builder - A library for building and formatting strings.
  • defgenx/gxid - A library for generating xids
  • johnbjrk/gap - A library for comparing strings/lists, creating structured diffs and visualizing the differences

Validation

Websockets

  • lpil/nerf - Gleam bindings to gun, the Erlang HTTP/1.1, HTTP/2 and Websocket client.

Templates

Serverless

Projects

Compilers

Compilers for Gleam and compilers written in Gleam.

Programming Challenges

Web applications

Web applications written in Gleam.

Tools

  • 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

Resources

Websites

Websites with Gleam related content.

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

Courses

  • Exercism's Gleam track - Crowd-sourced code mentorship. Practice having thoughtful conversations about code.

Talks

Social Media

Twitter

Reddit