Awesome Erlang
A curated list of amazingly awesome Erlang libraries, resources and shiny thing inspired by awesome-elixir.
- Awesome Erlang
- Package Management
- Release Management
- Web Frameworks
- Web Framework Components
- HTTP
- Testing
- Logging
- Monitoring
- Code Analysis
- Build Tools
- Geolocation
- Debugging
- Actors
- Date and Time
- ORM and Datamapping
- Queue
- Authentication
- Text and Numbers
- REST and API
- Caching
- Third Party APIs
- Networking
- Algorithms and Datastructures
- Translations and Internationalizations
- Miscellaneous
- Resources
- Other Awesome Lists
- Contributing
Package Management
Libraries and tools for package and dependency management.
Release Management
Libraries and tools for release management.
- relx - A release assembler for Erlang.
Web Frameworks
Web development frameworks.
- Axiom - A micro-framework, inspired by Ruby's Sinatra.
- ChicagoBoss - A server framework inspired by Rails and written in Erlang.
- cowboy - A simple HTTP server.
- Giallo - A small and flexible web framework on top of Cowboy.
- MochiWeb - An Erlang library for building lightweight HTTP servers.
- N2O - WebSocket Application Server.
- Zotonic - High speed, real-time web framework and content management system.
Web Framework Components
Standalone component from web development frameworks.
- cb_admin - An admin interface for Chicago Boss.
- cb_websocket_controller - A template for implementing a Websocket controller for ChicagoBoss.
- giallo_session - A session management library for the Giallo web framework.
HTTP
Libraries for working with HTTP and scraping websites.
- bullet - Simple, reliable, efficient streaming for Cowboy.
- lhttpc - A lightweight HTTP/1.1 client implemented in Erlang.
Testing
Libraries for testing codebases and generating test data.
- PropEr - A QuickCheck-inspired property-based testing tool for Erlang.
Logging
Libraries for generating and working with log files.
- lager - A logging framework for Erlang/OTP.
- lager_amqp_backend - AMQP RabbitMQ Lager backend.
- lager_hipchat - HipChat backend for lager.
- lager_loggly - Loggly backend for lager.
- lager_smtp - SMTP backend for lager.
- logplex - Heroku log router.
Monitoring
Libraries for gathering metrics and monitoring.
- entop - A top-like Erlang node monitoring tool.
- eper - A loose collection of Erlang Performance related tools.
- Exometer - An Erlang instrumentation package.
- folsom - An Erlang based metrics system inspired by Coda Hale's metrics.
- statsderl - A statsd Erlang client.
- vmstats - Tiny Erlang app that works in conjunction with statsderl in order to generate information on the Erlang VM for graphite logs.
Code Analysis
Libraries and tools for analysing, parsing and manipulation codebases.
- eflame - A Flame Graph profiler for Erlang.
Build Tools
Project build and automation tools.
- rebar - Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- erl-rstar - An Erlang implementation of the R*-tree spacial data structure.
- GeoCouch - A spatial extension for Couchbase and Apache CouchDB.
- Teles - An Erlang network service for manipulating geographic data.
Debugging
Libraries and tools for debugging code and applications.
- tx - An HTML Erlang term viewer, starts own webserver and displays any term you give it from your Erlang node.
Actors
Libraries and tools for working with actors and such.
- poolboy - A hunky Erlang worker pool factory.
Date and Time
Libraries for working with dates and times.
ORM and Datamapping
Libraries that implement object-relational mapping or datamapping techniques.
- boss_db - A sharded, caching, pooling, evented ORM for Erlang.
Queue
Libraries for working with event and task queues.
- tinymq - A diminutive, in-memory message queue for Erlang.
Authentication
Libraries for implementing authentications schemes.
- oauth2 - Erlang Oauth2 implementation.
Text and Numbers
Libraries for parsing and manipulating text and numbers.
- jsx - an erlang application for consuming, producing and manipulating json.
REST and API
Libraries and web tools for developing REST-ful APIs.
- leptus - Leptus is an Erlang REST framework that runs on top of cowboy.
Caching
Libraries for caching data.
Third Party APIs
Libraries for accessing third party APIs.
Networking
Libraries and tools for using network related stuff.
Algorithms and Datastructures
Libraries and implementations of algorithms and datastructures.
- erlando - A set of syntax extensions like currying and monads for Erlang.
- statebox - Erlang state "monad" with merge/conflict-resolution capabilities.
- riak_dt - Erlang library of state based CRDTs.
Translations and Internationalizations
Libraries providing translations or internationalizations.
Miscellaneous
Useful libraries or tools that don't fit in the categories above.
Resources
Various resources, such as books, websites and articles, for improving your Erlang development skills and knowledge.
Websites
Useful web and Erlang-related websites and newsletters.
- Erlang Central - An awesome collections of erlang resource along with live community chat for discussing and seeking help.
- Planet Erlang - Planet site/RSS feed of blog posts covering topics across the Erlang ecosystem.
Books
Fantastic books and e-books.
- Learn You Some Erlang - Learn you some Erlang - for great good! A very thorough resource covering everything from beginning Erlang programming to large-scale development and deployment.
Web Reading
General web-development-related reading materials.
Erlang Reading
Erlang-releated reading materials.
Screencasts
Cool video tutorials.
Contributing
Please see CONTRIBUTING for details.