Freaking Awesome Elixir

Data updated at 2026-09-12T06:52:56.451183Z
A curated list with Github stars and forks stats based on awesome h4cc/awesome-elixir.
To contribute new package to the list, please send a request to h4cc/awesome-elixir
Top 20 packages
- 26632β 3668π΄ [Elixir] Elixir Github Wiki - The project's wiki, containing much useful information.
- 26632β 3668π΄ [Elixir] Elixir Github Repository - The project repository.
- 23154β 3110π΄ [Elixir] phoenix - Elixir Web Framework targeting full-featured, fault tolerant applications with realtime functionality.
- 9085β 456π΄ [Elixir] Firezone - Open-source VPN server and egress firewall for Linux built on WireGuard. Firezone is easy to set up (all dependencies are bundled thanks to Chef Omnibus), secure, performant, and self hostable.
- 6495β 1484π΄ [Elixir] ecto - A database wrapper and language integrated query for Elixir.
- 5215β 456π΄ [Elixir] credo - A static code analysis tool with a focus on code consistency and teaching Elixir. (Docs).
- 4861β 247π΄ [Rust] Rustler - Library for writing NIFs for Erlang or Elixir safely in Rust. No segfaults.
- 4636β 557π΄ [Rust] Ockam - A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. Docs .
- 4427β 300π΄ [Elixir] christopheradams/elixir_style_guide - A community-driven style guide for Elixir.
- 4402β 559π΄ [Elixir] Absinthe Graphql - Fully featured GraphQL library.
- 3968β 369π΄ [Elixir] oban - Robust asynchronous job processor powered by Elixir and modern PostgreSQL.
- 3582β 110π΄ [Rust] lumen - An alternative BEAM implementation, designed for WebAssembly.
- 3514β 387π΄ [Elixir] guardian - An authentication framework for use with Elixir applications. (Docs).
- 3093β 184π΄ [Elixir] magnetissimo - Web application that indexes all popular torrent sites, and saves it to the local database.
- 3066β 426π΄ [Elixir] 30 Days of Elixir - A walk through the Elixir language in 30 exercises.
- 3016β 610π΄ [Elixir] plug - A specification and conveniences for composable modules in between web applications.
- 3002β 264π΄ [Python] m2cgen - A CLI tool to transpile trained classic ML models into a native Elixir code with zero dependencies.
- 2953β 398π΄ [Elixir] distillery - A pure Elixir implementation of release packaging functionality for the Erlang VM.
- 2904β 231π΄ [Elixir] Nx - Multi-dimensional arrays (tensors) and numerical definitions for Elixir.
- 2768β 247π΄ [Elixir] changelog.com - CMS that runs changelog.com built with Phoenix 1.4.
Awesome Elixir

A curated list of amazingly awesome Elixir libraries, resources, and shiny things inspired by awesome-php.
If you think a package should be added, please add a :+1: (:+1:) at the according issue or create a new one.
There are other sites with curated lists of elixir packages which you can have a look at.
- Awesome Elixir
- Actors
- Algorithms and Data structures
- Applications
- Artificial Intelligence
- Audio and Sounds
- Authentication
- Authorization
- Behaviours and Interfaces
- Benchmarking
- Bittorrent
- BSON
- Build Tools
- Caching
- Chatting
- Cloud Infrastructure and Management
- Code Analysis
- Command Line Applications
- Configuration
- Cryptography
- CSV
- Data Visualization
- Date and Time
- Debugging
- Deployment
- Documentation
- Domain-specific language
- ECMAScript
- Embedded Systems
- Encoding and Compression
- Errors and Exception Handling
- Eventhandling
- Examples and funny stuff
- Feature Flags and Toggles
- Feeds
- Files and Directories
- Forms
- Framework Components
- Frameworks
- Games
- Geolocation
- GUI
- Hardware
- HTML
- HTTP
- Images
- Instrumenting / Monitoring
- JSON
- Languages
- Lexical analysis
- Logging
- Macros
- Markdown
- Miscellaneous
- Native Implemented Functions
- Natural Language Processing (NLP)
- Networking
- Office
- ORM and Datamapping
- OTP
- Package Management
- Protocols
- Queue
- QUIC
- Release Management
- REST and API
- Search
- Security
- SMS
- Static Page Generation
- Statistics
- Templating
- Testing
- Text and Numbers
- Third Party APIs
- Translations and Internationalizations
- Utilities
- Validations
- Version Control
- Video
- WebAssembly
- XML
- YAML
- Resources
- Books
- Cheat Sheets
- Community
- Editors
- Newsletters
- Other Awesome Lists
- Podcasts
- Reading
- Screencasts
- Styleguides
- Websites
- Contributing
Actors
Libraries and tools for working with actors and such. * 211β 6π΄ [Elixir] alf - Flow-based Application Layer Framework. * 279β 64π΄ [Elixir] bpe - Business Process Engine in Erlang. (Doc). * 317β 84π΄ [Erlang] pooler - An OTP Process Pool Application. * 88β 8π΄ [Elixir] poolex - Pure elixir pool manager. * 378β 16π΄ [Elixir] spawn - Elixir poliglot actors service mesh.
Algorithms and Data structures
Libraries and implementations of algorithms and data structures.
- 226β 6π΄ [Elixir] aja - High performance persistent vectors and ordered maps.
- 37β 8π΄ [Elixir] array - An Elixir wrapper library for Erlang's array.
- 41β 3π΄ [Elixir] aruspex - Aruspex is a configurable constraint solver, written purely in Elixir.
- 34β 3π΄ [Elixir] bimap - Pure Elixir implementation of bidirectional maps and multimaps.
- 37β 5π΄ [Elixir] bitmap - Pure Elixir implementation of bitmaps.
- 55β 12π΄ [Elixir] blocking_queue - BlockingQueue is a simple queue implemented as a GenServer. It has a fixed maximum length established when it is created.
- 111β 8π΄ [Elixir] bloomex - A pure Elixir implementation of Scalable Bloom Filters.
- 22β 2π΄ [Elixir] clope - Elixir implementation of CLOPE: A Fast and Effective Clustering Algorithm for Transactional Data.
- 39β 10π΄ [Elixir] Closure Table - Closure Table for Elixir - a simple solution for storing and manipulating complex hierarchies. It provides in-memory and Ecto adapters.
- 34β 1π΄ [Elixir] combination - Elixir library to generate combinations and permutations from Enumerable collection.
- 56β 4π΄ [Elixir] conrex - An Elixir implementation of the CONREC algorithm for topographic or isochrone maps.
- 2β 0π΄ [Elixir] count_buffer - Buffer a large set of counters and flush periodically.
- 42β 0π΄ [Elixir] cuckoo - A pure Elixir implementation of Cuckoo Filters.
- 55β 6π΄ [Elixir] cuid - Collision-resistant ids optimized for horizontal scaling and sequential lookup performance, written in Elixir.
- data_morph - Create Elixir structs from data.
- 63β 7π΄ [Elixir] dataframe - Package providing functionality similar to Python's Pandas or R's data.frame().
- 219β 19π΄ [Elixir] datastructures - A collection of protocols, implementations and wrappers to work with data structures.
- 29β 5π΄ [Elixir] def_memo - A memoization macro (defmemo) for elixir using a genserver backing store.
- 5β 0π΄ [Elixir] dlist - Deque implementations in Elixir.
- 35β 6π΄ [Elixir] eastar - A* graph pathfinding in pure Elixir.
- 64β 19π΄ [Elixir] ecto_materialized_path - Tree structure, hierarchy and ancestry for the ecto models.
- 100β 20π΄ [Elixir] ecto_state_machine - Finite state machine pattern implemented on Elixir and adopted for Ecto.
- 19β 0π΄ [Elixir] elistrix - A latency / fault tolerance library to help isolate your applications from an uncertain world of slow or failed services.
- 115β 5π΄ [Gleam] emel - A simple and functional machine learning library written in elixir.
- 160β 35π΄ [Erlang] erlang-algorithms - Implementations of popular data structures and algorithms.
- 297β 21π΄ [Elixir] exconstructor - An Elixir library for generating struct constructors that handle external data with ease.
- 12β 6π΄ [Elixir] exfsm - Simple elixir library to define a static FSM.
- 58β 14π΄ [Elixir] exmatrix - ExMatrix is a small library for working with matrices, originally developed for testing matrix multiplication in parallel.
- 35β 3π΄ [C] exor_filter - Nif for xor_filters. 'Faster and Smaller Than Bloom and Cuckoo Filters'.
- 0β 1π΄ [Elixir] ezcryptex - Thin layer on top of Cryptex.
- 1621β 90π΄ [Elixir] flow - Computational parallel flows on top of GenStage.
- 5β 5π΄ [Elixir] fnv - Pure Elixir implementation of FowlerΓ’ΒΒNollΓ’ΒΒVo hash functions.
- 364β 25π΄ [Elixir] fsm - Finite state machine as a functional data structure.
- 513β 52π΄ [Erlang] fuse - This application implements a so-called circuit-breaker for Erlang.
- 40β 3π΄ [Elixir] gen_fsm - A generic finite state-machine - Elixir wrapper around OTP's gen_fsm.
- 12β 1π΄ [Elixir] graphex - A library for composing and executing task graphs in elixir.
- 90β 12π΄ [Elixir] graphmath - An Elixir library for performing 2D and 3D mathematics.
- 24β 18π΄ [Elixir] hash_ring_ex - A consistent hash-ring implementation for Elixir.
- 21β 3π΄ [Elixir] hypex - Fast Elixir implementation of HyperLogLog.
- 19β 3π΄ [Elixir] indifferent - Indifferent access for Elixir maps/list/tuples with custom key conversion.
- 4β 2π΄ [Elixir] isaac - Isaac is an elixir module for ISAAC: a fast cryptographic random number generator.
- 12β 2π΄ [Elixir] jumper - Jump consistent hash implementation in Elixir (without NIFs).
- 7β 1π΄ [Erlang] key2value - Erlang 2-way Set Associative Map.
- 8β 0π΄ [Elixir] lfsr - Elixir implementation of a binary Galois Linear Feedback Shift Register.
- 228β 14π΄ [Elixir] loom - A CRDT library with ΓΒ΄-CRDT support.
- 17β 13π΄ [Elixir] luhn - Luhn algorithm in Elixir.
- 65β 45π΄ [C] lz4 - LZ4 bindings for Erlang for fast data compressing.
- 568β 56π΄ [Elixir] machinery - A state machine library for structs in general, it integrates with Phoenix out of the box.
- 12β 0π΄ [Elixir] mason - Coerce maps into structs. This is helpful e.g. when you interface a REST API and want to create a struct from the response.
- 489β 32π΄ [Elixir] matrex - A blazing fast matrix library for Elixir/Erlang with C implementation using CBLAS.
- 98β 15π΄ [Elixir] merkle_tree - A Merkle hash tree implementation in Elixir.
- 4β 1π΄ [Elixir] minmaxlist - Elixir library extending
Enum.min_by/2,Enum.max_by/2andEnum.min_max_by/2to return a list of results instead of just one. - 4β 6π΄ [Erlang] mmath - A library for performing math on number 'arrays' in binaries.
- 308β 12π΄ [Elixir] monadex - Upgrade your Elixir pipelines with monads.
- 39β 7π΄ [Elixir] murmur - A pure Elixir implementation of the non-cryptographic hash Murmur3.
- 18β 5π΄ [Elixir] nary_tree - An Elixir implementation of generic n-ary tree data structure.
- 14β 6π΄ [Elixir] natural_sort - Elixir natural sort implementation for lists of strings.
- 2β 0π΄ [Elixir] navigation_tree - A navigation tree representation with helpers to generate HTML out of it.
- 103β 19π΄ [Elixir] parallel_stream - A parallel stream implementation for Elixir.
- 29β 3π΄ [Elixir] paratize - Elixir library providing some handy parallel processing (execution) facilities that support configuring number of workers and timeout.
- 64β 2π΄ [Elixir] parex - Parallel Execute (Parex) is an Elixir module for executing multiple (slow) processes in parallel.
- 5β 0π΄ [Elixir] qcomplex - Elixir library implementing complex numbers and math operations for them.
- 35β 5π΄ [Elixir] qex - Wraps
:queue, with improved API andInspect,CollectableandEnumerableprotocol implementations. - 8β 0π΄ [Elixir] qrational - Elixir library implementing rational numbers and math operations for them.
- 42β 11π΄ [Elixir] ratio - Adds Rational Numbers and allows them to be used in common arithmetic operations. Also supports conversion between Floats and Rational Numbers.
- 37β 14π΄ [Elixir] red_black_tree - Red-Black tree implementation in Elixir.
- 141β 16π΄ [Elixir] remodel - An Elixir presenter package used to transform map structures.
- 10β 3π΄ [Elixir] rendezvous - Implementation of the Rendezvous or Highest Random Weight (HRW) hashing algorithm in Elixir.
- 12β 4π΄ [Elixir] rock - Elixir implementation of ROCK: A Robust Clustering Algorithm for Categorical Attributes.
- 70β 23π΄ [Erlang] sfmt - SIMD-oriented Fast Mersenne Twister (SFMT) for Erlang.
- 23β 3π΄ [Elixir] simhash - Simhash implementation using Siphash and N-grams.
- 61β 9π΄ [Erlang] sleeplocks - BEAM friendly spinlocks for Elixir/Erlang.
- 23β 8π΄ [Elixir] sorted_set - Sorted Sets for Elixir.
- 2β 0π΄ [Elixir] spacesaving - stream count distinct element estimation using the "space saving" algorithm.
- 14β 0π΄ [Elixir] structurez - A playground for data structures in Elixir.
- 18β 5π΄ [Elixir] supermemo - An Elixir implementation of the Supermemo 2 algorithm.
- 18β 5π΄ [Elixir] tfidf - An Elixir implementation of term frequencyΓ’ΒΒinverse document frequency.
- 82β 10π΄ [Elixir] the_fuzz - Fuzzy string-matching algorithm implementations.
- 26β 3π΄ [Erlang] tinymt - Tiny Mersenne Twister (TinyMT) for Erlang.
- 131β 32π΄ [Erlang] trie - Erlang Trie Implementation.
- 1237β 60π΄ [Elixir] witchcraft - Common algebraic structures and functions for Elixir.
- 19β 0π΄ [Elixir] zipper_tree - Variadic arity tree with a zipper for Elixir.
Applications
Standalone applications. * 19β 0π΄ [Elixir] Caddishouse - A web-based document reader that connects to your cloud storage accounts using Phoenix/LiveView. * 190β 26π΄ [Elixir] CaptainFact - A collaborative, real-time video fact-checking platform. (Docs). * 10β 7π΄ [TeX] chat - A tiny text chat sample based on N2O. * 125β 10π΄ [JavaScript] Consolex - Consolex is a tool that allows you to attach a web based console to any mix project. * 41β 5π΄ [Elixir] dragonfly_server - Elixir app to serve Dragonfly images. * 259β 34π΄ [Elixir] exchat - A Slack-like app by Elixir, Phoenix & React (redux). * 24β 2π΄ [Elixir] Exon - A Γ’ΒΒmess managerΓ’ΒΒ developed in Elixir and provides a simple API to manage & document your stuff. (Docs). * 224β 24π΄ [Elixir] ExShop - Digital goods shop & blog created using Phoenix framework. * 16β 1π΄ [Elixir] Harpoon - A webhook receiver/inspector app, made using Phoenix and LiveView, it's basically a simplified version of webhook.site. * 102β 14π΄ [Elixir] Igthorn - Cryptocurrecy trading platform / trading bot with admin panel. * 366β 11π΄ [Elixir] Lynx - A Fast, Secure and Reliable Terraform Backend, Set up in Minutes. * majremind - A self-maintained database of your updated server which tells you which one needs to be updated. * 6β 1π΄ [Elixir] medex - Medical Examination - application for register health check callbacks and represent their state via HTTP. * medusa_server - A simple cowboy web server written in Elixir to stack images. (Docs). - :fire: :x: Broken link * 17β 4π΄ [Elixir] Nvjorn - A multi-protocol network services monitor written in Elixir using Poolboy. * 523β 55π΄ [Elixir] Phoenix Battleship - The Good Old game built with Elixir, Phoenix Framework, React and Redux. * 172β 17π΄ [Elixir] Phoenix Toggl - Toggl tribute done in Elixir, Phoenix Framework, React and Redux. * 2492β 396π΄ [JavaScript] Phoenix Trello - Trello tribute done in Elixir, Phoenix Framework, React and Redux. * 1500β 78π΄ [HTML] Plural - Deploys your favorite open source applications like airflow and airbyte in your own cloud account with just two commands. Written in Elixir and Phoenix Framework for server side, and React for frontend. * 1087β 99π΄ [Elixir] poxa - Open Pusher implementation, compatible with Pusher libraries. * 39β 7π΄ [CSS] Queerlink - A simple yet efficient URL shortening service written in Elixir. * 585β 68π΄ [Elixir] RemoteRetro - A real-time application for conducting Agile retrospectives at remoteretro.org written in Elixir/Phoenix/React. * 179β 22π΄ [Elixir] Sprint Poker - Online estimation tool for Agile teams, written using Elixir Lang, Phoenix Framework and React. * 103β 16π΄ [Elixir] Startup Job - An umbrella project to search startup jobs scraped from websites written in Elixir/Phoenix and React/Redux. * 498β 84π΄ [Elixir] Tai - A composable, real time, cryptocurrency market data and trade execution toolkit. * 156β 18π΄ [Elixir] tty2048 - Terminal-based 2048 game written in Elixir. * 63β 7π΄ [Elixir] uai_shot - A multiplayer ship game built with Elixir, Phoenix Framework and Phaser. * 9β 0π΄ [Elixir] utils - Website with handy day-to-day utils: to do list, URL shortener, code bin and pie chart. Written in Elixir using Phoenix Framework. * 122β 22π΄ [Elixir] workbench - From Idea to Execution - Manage your trading operation across a globally distributed cluster.
Artificial Intelligence
When your code becomes smarter than you.
- 189β 87π΄ [Elixir] AshAI - AI and LLM toolkit for Ash applications. MCP server, MCP dev tools, vector embeddings, chat interfaces, and more.
- 1689β 129π΄ [Elixir] Axon - Nx-powered Neural Networks.
- 6β 0π΄ [Elixir] Beaver - Beaver is a LLVM/MLIR Toolkit in Elixir and Zig.
- 15β 1π΄ [Elixir] ExLLama - LlamaCpp Nif Extensions for Elixir/Erlang. (Docs).
- 99β 13π΄ [Elixir] Exnn - Evolutive Neural Networks framework ΓΒ la G.Sher written in Elixir. (Docs).
- 33β 2π΄ [Elixir] GenAI - An extensible Generative AI Completion API Wrapper with basic chat completion with tool use support provided for Gemini, Anthropic, OpenAI, and Mistral models. (Docs).
- 1857β 119π΄ [Elixir] Jido - Autonomous agent framework for Elixir. Built for distributed, autonomous behavior and dynamic workflows.
- 3002β 264π΄ [Python] m2cgen - A CLI tool to transpile trained classic ML models into a native Elixir code with zero dependencies.
- 28β 5π΄ Neat-Ex - An Elixir implementation of the NEAT algorithm. (Docs).
- 7β 0π΄ [Elixir] Noizu-OpenAi - An Elixir Api for the OpenAI Library. (Docs).
- 2904β 231π΄ [Elixir] Nx - Multi-dimensional arrays (tensors) and numerical definitions for Elixir.
- 572β 192π΄ [Elixir] ReqLLM - LLM Client supporting over 100+ LLM Providers and Models
- Runhyve - Runhyve is complete virtual machines manager for bhyve on FreeBSD. It's written in Elixir and uses Phoenix framework.
- 395β 24π΄ [Elixir] simple_bayes - A Simple Bayes / Naive Bayes implementation in Elixir.
- Synapses - A lightweight library for neural networks.
- 3β 1π΄ [Elixir] Weaviate - Weaviate client and macros for declaring records. (Docs).
Audio and Sounds
Libraries working with sounds and tones.
- 27β 5π΄ [C] erlaudio - Erlang PortAudio bindings.
- 3β 0π΄ [Elixir] ex_alsa - Elixir ALSA bindings.
- 6β 2π΄ [Elixir] ex_jack - Elixir JACK bindings.
- 51β 11π΄ [Elixir] firmata - This package implements the Firmata protocol.
- 45β 8π΄ [Elixir] synthex - A signal synthesis library.
Authentication
Libraries for implementing authentication schemes.
- 38β 4π΄ [Elixir] aeacus - A simple configurable identity/password authentication module (Compatible with Ecto/Phoenix).
- 5β 0π΄ [Elixir] apache_passwd_md5 - Apache/APR Style Password Hashing.
- 66β 47π΄ [Elixir] aws_auth - AWS Signature Version 4 Signing Library for Elixir.
- 165β 26π΄ [Elixir] basic_auth - Elixir Plug to easily add HTTP basic authentication to an app.
- 1255β 220π΄ [Elixir] coherence - Coherence is a full featured, configurable authentication system for Phoenix. (Docs).
- 122β 12π΄ [Elixir] doorman - Tools to make Elixir authentication simple and flexible.
- 290β 46π΄ [Elixir] elixir_auth_google - The simplest way to add Google OAuth authentication ("Sign in with Google") to your Elixir/Phoenix app.
- 6β 6π΄ [Elixir] ex_aws_msk_iam_auth - AWS Managed Streaming for Apache Kafka (MSK) IAM Authentication plugin for Broadway Kafka.
- 325β 120π΄ [Elixir] goth - OAuth 2.0 library for server to server applications via Google Cloud APIs.
- 3514β 387π΄ [Elixir] guardian - An authentication framework for use with Elixir applications. (Docs).
- 372β 87π΄ [Elixir] guardian_db - An extension to Guardian that tracks tokens in your application's database to prevent playback. (Docs).
- 4β 3π΄ [Elixir] guardian_redis - Redis repository for Guardian DB. (Docs).
- 4β 2π΄ [Elixir] htpasswd - Apache htpasswd file reader/writer in Elixir.
- 4β 0π΄ [Elixir] mojoauth - MojoAuth implementation in Elixir.
- 771β 141π΄ [Elixir] oauth2 - An OAuth 2.0 client library for Elixir.
- 4β 1π΄ [Elixir] oauth2_facebook - A Facebook OAuth2 Provider for Elixir.
- 2β 2π΄ [Elixir] oauth2_github - A GitHub OAuth2 Provider for Elixir.
- 4β 1π΄ [Elixir] oauth2cli - Simple OAuth2 client written for Elixir.
- 56β 15π΄ [Elixir] oauth2ex - Another OAuth 2.0 client library for Elixir.
- 71β 35π΄ [Elixir] oauther - An OAuth 1.0 implementation for Elixir.
- 50β 6π΄ [Elixir] passwordless_auth - Simple passwordless login or 2-factor / multi-factor authentication for Elixir.
- 402β 20π΄ [Elixir] phauxth - Authentication library for Phoenix 1.3 and other Plug-based apps.
- 19β 7π΄ [Elixir] phoenix_client_ssl - Client SSL Authentication Plugs for Phoenix and other Plug-based apps.
- 1667β 162π΄ [Elixir] pow - Robust, modular, and extendable user authentication system (Website - Doc).
- 134β 106π΄ [Elixir] samly - SAML SP SSO made easy (Doc).
- 12β 1π΄ [Elixir] sesamex - Another simple and flexible authentication solution in 5 minutes!.
- 13β 16π΄ [Elixir] sigaws - AWS Signature V4 signing and verification library (Doc).
- 1716β 119π΄ [Elixir] ueberauth - An Elixir Authentication System for Plug-based Web Applications.
- ueberauth_auth0 - An Ueberauth strategy for using Auth0 to authenticate your users.
- 16β 14π΄ [Elixir] ueberauth_cas - Central Authentication Service strategy for ΓΒberauth.
- 79β 60π΄ [Elixir] ueberauth_facebook - Facebook OAuth2 Strategy for ΓΒberauth.
- 1β 0π΄ [Elixir] ueberauth_foursquare - Foursquare OAuth2 Strategy for ΓΒberauth.
- 102β 54π΄ [Elixir] ueberauth_github - A GitHub strategy for ΓΒberauth.
- 177β 85π΄ [Elixir] ueberauth_google - A Google strategy for ΓΒberauth.
- 80β 21π΄ [Elixir] ueberauth_identity - A simple username/password strategy for ΓΒberauth.
- 5β 5π΄ [Elixir] ueberauth_line - LINE Strategy for ΓΒberauth.
- 40β 36π΄ [Elixir] ueberauth_microsoft - A Microsoft strategy for ΓΒberauth.
- 23β 30π΄ [Elixir] ueberauth_slack - A Slack strategy for ΓΒberauth.
- 37β 39π΄ [Elixir] ueberauth_twitter - Twitter Strategy for ΓΒberauth.
- 19β 12π΄ [Elixir] ueberauth_vk - vk.com Strategy for ΓΒberauth.
- 11β 2π΄ [Elixir] ueberauth_weibo - Weibo OAuth2 Strategy for ΓΒberauth.
- 20β 1π΄ [Elixir] zachaeus - An easy to use licensing system, based on asymmetric cryptography.
Authorization
Libraries for implementing Authorization handling.
- 100β 5π΄ [Elixir] authorize - Rule based authorization, for advanced authorization rules.
- 796β 45π΄ [Elixir] bodyguard - A flexible authorization library for Phoenix applications.
- 459β 28π΄ [Elixir] canada - A simple authorization library that provides a friendly interface using declarative permission rules.
- 485β 48π΄ [Elixir] canary - An authorization library for Elixir applications that restricts what resources the current user is allowed to access. (Docs).
- 82β 7π΄ [Elixir] speakeasy - Middleware based authentication and authorization for Absinthe GraphQL powered by Bodyguard.
- 63β 11π΄ [Elixir] terminator - Database based authorization (ACL), with custom DSL rules for requiring needed permissions. (Docs).
Behaviours and Interfaces
Definitions how something should behave, like Interfaces from OOP-World
- 267β 23π΄ [Elixir] connection - Connection behaviour for connection processes. The API is superset of the GenServer API.
- 313β 36π΄ [Elixir] gen_state_machine - Elixir wrapper for gen_statem.
- 18β 6π΄ [Elixir] stockastic - Simple Elixir wrapper for the Stockfighter API.
Benchmarking
Running code to see how long it takes, which is faster and/or if improvements have been made.
- 85β 2π΄ [Elixir] beamchmark - A Tool for measuring EVM performance.
- 1514β 70π΄ [Elixir] benchee - Easy and extensible benchmarking in Elixir.
- 516β 24π΄ [Elixir] benchfella - Benchmarking tool for Elixir.
- 71β 3π΄ [Elixir] bmark - A benchmarking tool for Elixir.
Bittorrent
Sharing is caring with Elixir
- 100β 16π΄ [Elixir] bento - An incredibly fast, correct, pure-Elixir Bencoding library.
- 13β 0π΄ [Elixir] tracker_request - Dealing with bittorrent tracker requests and responses.
- 19β 2π΄ [Elixir] wire - Encode and decode bittorrent peer wire protocol messages with Elixir.
BSON
Libraries and implementations working with BSON.
- 9β 6π΄ [Elixir] BSONMap - Elixir package that applies a function to each document in a BSON file and has a low memory consumption.
- 12β 7π΄ [Elixir] cyanide - An Elixir BSON encoding/decoding library.
Build Tools
Project build and automation tools.
- 67β 18π΄ [Erlang] active - Recompilation and Reloading on FileSystem changes.
- 16β 3π΄ [Elixir] coffee_rotor - Rotor plugin to compile CoffeeScript files.
- 4β 0π΄ [Elixir] dismake - Mix compiler running make.
- 11β 1π΄ [Elixir] etude - Parallel computation coordination compiler for Erlang/Elixir.
- 7β 3π΄ [Elixir] Exscript - Elixir escript library.
- 172β 51π΄ [Erlang] mad - Small and Fast Rebar Replacement.
- 69β 40π΄ [Erlang] pc - A rebar3 port compiler.
- 372β 38π΄ [Elixir] reaxt - React template into your Elixir application for server rendering.
- 1β 1π΄ [Erlang] rebar3_abnfc_plugin - Rebar3 abnfc compiler.
- 0β 4π΄ [Erlang] rebar3_asn1_compiler - Plugin for compiling ASN.1 modules with Rebar3.
- 56β 14π΄ [Erlang] rebar3_auto - Rebar3 plugin to auto compile and reload on file change.
- 7β 14π΄ [Erlang] rebar3_diameter_compiler - Compile diameter .dia files in rebar3 projects.
- 13β 19π΄ [Erlang] rebar3_eqc - A rebar3 plugin to enable the execution of Erlang QuickCheck properties.
- 2β 0π΄ [Erlang] rebar3_exunit - A plugin to run Elixir ExUnit tests from rebar3 build tool.
- 0β 1π΄ [Erlang] rebar3_idl_compiler - This is a plugin for compiling Erlang IDL files using Rebar3.
- 3β 1π΄ [Erlang] rebar3_live - Rebar3 live plugin.
- 2β 11π΄ [Erlang] rebar3_neotoma_plugin - Rebar3 neotoma (Parser Expression Grammar) compiler.
- 10β 3π΄ [Erlang] rebar3_protobuffs - rebar3 protobuffs provider using protobuffs from Basho.
- 25β 17π΄ [Makefile] rebar3_run - Run a release with one simple command.
- 0β 0π΄ [Erlang] rebar3_yang_plugin - Rebar3 yang compiler.
- 26β 3π΄ [Erlang] reltool_util - Erlang reltool utility functionality application.
- 693β 236π΄ [Erlang] relx - A release assembler for Erlang.
- 148β 29π΄ [Elixir] remix - Automatic recompilation of Mix code on file change.
- 80β 4π΄ [Elixir] rotor - Super-simple build system for Elixir.
- 1β 0π΄ [Elixir] sass_elixir - A sass plugin for Elixir projects.
Caching
Libraries for caching data.
- 1745β 122π΄ [Elixir] cachex - A powerful caching library for Elixir with a wide featureset.
- 927β 73π΄ [Elixir] con_cache - ConCache is an ETS based key/value storage.
- 16β 3π΄ [Elixir] elixir_locker - Locker is an Elixir wrapper for the locker Erlang library that provides some useful libraries that should make using locker a bit easier.
- 26β 2π΄ [Erlang] jc - In-memory, distributable cache with pub/sub, JSON-query and consistency support.
- 37β 12π΄ [Elixir] lru_cache - Simple LRU Cache, implemented with ets.
- 204β 14π΄ [Elixir] memoize - A memoization macro that easily cache function.
- 1398β 79π΄ [Elixir] nebulex - A fast, flexible and extensible distributed and local caching library for Elixir.
- 26β 7π΄ [Elixir] request_cache_plug - Easy to use caching for requests in either Phoenix Controllers or GraphQL resolvers. Bypasses JSON encoding/decoding for a large speedup.
- 52β 9π΄ [Elixir] stash - A straightforward, fast, and user-friendly key/value store.
Chatting
Chatting via IRC, Slack, HipChat and other systems using Elixir.
- 114β 19π΄ [Elixir] alice - A Slack bot framework for Elixir.
- 36β 5π΄ [Elixir] chatty - A basic IRC client that is most useful for writing a bot.
- 920β 69π΄ [Elixir] cog - Cog is an open chatops platform that gives you a secure, collaborative command line right in your chat window.
- 238β 33π΄ [Elixir] ExGram - a library to build Telegram Bots, you can use the low-level methods and models or use the really opinionated framework included. (Docs).
- 154β 38π΄ [Elixir] ExIrc - IRC client adapter for Elixir projects.
- 69β 9π΄ [Elixir] ExMustang - A simple, clueless slackbot and collection of responders.
- 21β 2π΄ [Elixir] Guri - Automate tasks using chat messages.
- 648β 66π΄ [Elixir] hedwig - XMPP Client/Bot Framework for Elixir.(Docs).
- 74β 6π΄ [Elixir] kaguya - A small, powerful, and modular IRC bot.
- 81β 14π΄ [Elixir] slacker - A bot library for the Slack chat service.
- 40β 10π΄ [Elixir] yocingo - Create your own Telegram Bot.
Cloud Infrastructure and Management
Applications, tools and libraries for your own cloud service.
- 595β 137π΄ [Elixir] aws - AWS clients for Elixir.
- 86β 11π΄ [Elixir] Batteries Included - A self hostable platform for automation/UI driven Kubernetes; built in Elixir and Golang the entire UI is built with Phoenix Live View.
- 437β 32π΄ [Elixir] Bonny - Kubernetes Operator Development Framework.
- Cloudi - CloudI is for back-end server processing tasks that require soft-realtime transaction.
- 250β 18π΄ [Elixir] discovery - An OTP application for auto-discovering services with Consul.
- 651β 443π΄ [Erlang] erlcloud - Cloud Computing library for Erlang (Amazon EC2, S3, SQS, SimpleDB, Mechanical Turk, ELB). (Docs).
- 1342β 578π΄ [Elixir] ex_aws - AWS client, supporting Dynamo, Kinesis, Lambda, SQS, and S3.
- 5β 1π΄ [Elixir] ex_riak_cs - Riak CS API client.
- 9β 2π΄ [Elixir] fleet_api - A simple wrapper for the Fleet (CoreOS) API. Can be used with etcd tokens or via direct node URLs.
- 0β 2π΄ [Elixir] Gandi - Gandi Wrapper for Leaseweb infrastructure.
- 369β 41π΄ [Jupyter Notebook] IElixir - Jupyter's kernel for Elixir programming language.
- 342β 50π΄ [Elixir] k8s - Kubernetes Elixir client with CRD support, multi-cluster support, pluggable auth, and configurable middleware.
- 138β 35π΄ [Elixir] Kazan - Kubernetes client for Elixir, generated from the k8s open API specifications.
- 12β 2π΄ [Elixir] Kubereq - Kubernetes Client for Elixir based on Req.
- 39β 3π΄ [Elixir] Kubex - Kubernetes client and integration for Elixir, written in pure Elixir.
- 3β 2π΄ [Elixir] Leaseweb - Elixir Wrapper for Leaseweb infrastructure.
- 2155β 201π΄ [Elixir] libcluster - Automatic cluster formation/healing for Elixir applications.(Docs).
- 59β 11π΄ [Erlang] nodefinder - Strategies for automatic node discovery in Erlang.
- 86β 3π΄ [Elixir] nomad - Create cloud portable Elixir and Phoenix apps. Write once, use everywhere.
- 104β 22π΄ [Erlang] sidejob - Parallel worker and capacity limiting library for Erlang.
- 72β 3π΄ [Elixir] sidetask - SideTask is an alternative to Task.Supervisor using Basho's sidejob library with parallelism and capacity limiting.
- 18β 3π΄ [Elixir] skycluster - Automatic Erlang cluster formation, messaging and management for Elixir/Erlang applications. Integrated with Kubernetes.
- 3β 0π΄ [Elixir] vercel - An Elixir wrapper for Vercel's API.
Code Analysis
Libraries and tools for code base analysis, parsing, and manipulation.
- 18β 3π΄ [Elixir] belvedere - An example of CircleCI integration with Elixir.
- 102β 24π΄ [JavaScript] coverex - Coverage Reports for Elixir.
- 5215β 456π΄ [Elixir] credo - A static code analysis tool with a focus on code consistency and teaching Elixir. (Docs).
- DepViz - A visual tool to help developers understand Elixir recompilation in their projects. (Code).
- 1794β 160π΄ [Elixir] dialyxir - Mix tasks to simplify use of Dialyzer in Elixir projects.(Docs).
- 329β 14π΄ [Elixir] ex_check - One task to efficiently run all code analysis & testing tools in an Elixir project.
- 303β 44π΄ [Elixir] excellent_migrations - Detecting potentially dangerous operations in database migrations.
- 863β 187π΄ [Elixir] excoveralls - Coverage report tool for Elixir with coveralls.io integration.
- 180β 10π΄ [Elixir] exprof - A simple code profiler for Elixir, using eprof.
- 10β 1π΄ [Elixir] int_set - A time- and memory-efficient unordered data structure for positive integers.
Command Line Applications
Anything helpful for building CLI applications.
- elementtui - Library to help create terminal user interfaces (TUI).
- 218β 16π΄ [Elixir] ex_cli - User friendly CLI apps for Elixir.
- 30β 2π΄ [Elixir] ex_prompt - Helper package to add interactivity to your command line applications as easy as possible.
- 26β 1π΄ [Elixir] firex - Firex is a library for automatically generating command line interfaces (CLIs) from an elixir module.
- 256β 80π΄ [Erlang] getopt - Command-line options parser for Erlang.
- 90β 7π΄ [Elixir] loki - Library for creating interactive command-line application.
- 22β 5π΄ [Elixir] optimus - Command-line option parser for Elixir inspired by clap.rs.
- 531β 15π΄ [Elixir] owl - Owl is a toolkit for writing command-line user interfaces in Elixir.
- phoenix-cli - Command-line interface for Phoenix Framework like Rails commands.
- 338β 22π΄ [Elixir] progress_bar - Command-line progress bars and spinners.
- 34β 3π΄ [Elixir] prompt - Toolkit for building command line applications in Elixir.
- 849β 41π΄ [Elixir] ratatouille - A TUI (terminal UI) kit for Elixir.
- 306β 12π΄ [Elixir] scribe - Pretty-print tables of Elixir structs and maps. Inspired by hirb.
- 263β 27π΄ [Elixir] table_rex - Generate configurable ASCII style tables for display.
- 95β 3π΄ [Elixir] tabula - Pretty print list of Ecto query results / maps in ascii tables (GitHub Markdown/OrgMode).
Configuration
Libraries and tools working with configurations
- 306β 32π΄ [Elixir] confex - Helper module that provides a nice way to read environment configuration at runtime.
- 21β 9π΄ [Elixir] configparser_ex - A simple Elixir parser for the same kind of files that Python's configparser library handles.
- 378β 59π΄ [Elixir] conform - Easy release configuration for Elixir apps.
- 241β 28π΄ [Elixir] dotenv - A port of dotenv to Elixir.
- 3β 0π΄ [Elixir] enux - utility package for loading, validating and documenting your app's configuration variables from env, json and jsonc files at runtime and injecting them into your environment.
- 9β 5π΄ [Elixir] figaro - Simple Elixir project configuration.
- 11β 2π΄ [Elixir] figaro_elixir - Environmental variables manager for Elixir.
- 141β 4π΄ [Elixir] hush - Read and inject configuration at runtime, and in release mode with support for multiple providers.
- 19β 2π΄ [Elixir] hush_aws_secrets_manager - AWS Secrets Manager provider for hush.
- 20β 2π΄ [Elixir] hush_gcp_secret_manager - Google Secret Manager provider for hush.
- 21β 2π΄ [Elixir] mahaul - Supercharge your environment variables in Elixir. Parse and validate with compile time access guarantees, defaults, fallbacks and app pre-boot validations.
- 105β 5π΄ [Elixir] skogsra - Library to manage OS environment variables and application configuration options with ease.
- 3β 3π΄ [Elixir] sweetconfig - Read YAML configuration files from any point at your app.
- weave - JIT configuration loader that works with Kubernetes and Docker Swarm. - :fire: :x: Broken link
Cryptography
Encrypting and decrypting data
- 9β 2π΄ [Elixir] aescmac - AES CMAC (RFC 4493) in Elixir.
- 62β 22π΄ [Elixir] cipher - Elixir crypto library to encrypt/decrypt arbitrary binaries.
- 626β 58π΄ [Elixir] cloak - Cloak makes it easy to use encryption with Ecto.(Docs).
- 1317β 62π΄ [Elixir] comeonin - Password hashing (argon2, bcrypt, pbkdf2_sha512) library for Elixir.(https://hexdocs.pm/comeonin/api-reference.html).
- 12β 4π΄ [Erlang] crypto_rsassa_pss - RSASSA-PSS Public Key Cryptographic Signature Algorithm for Erlang.
- 3β 1π΄ [Elixir] elixir_tea - TEA implementation in Elixir.
- 3β 1π΄ [Elixir] ex_bcrypt - Elixir wrapper for the OpenBSD bcrypt password hashing algorithm.
- 161β 51π΄ [Elixir] ex_crypto - Elixir wrapper for Erlang
cryptoandpublic_keymodules. Provides sensible defaults for many crypto functions to make them easier to use.(Docs). - 19β 5π΄ [Elixir] exgpg - Use gpg from Elixir.
- 477β 23π΄ [Elixir] nimble_totp - Allows implementation of Time-based One-Time Passwords (TOTP) for 2FA.
- 18β 1π΄ [Elixir] ntru_elixir - Elixir wrapper for libntru. A post quantum cryptography system.
- 242β 38π΄ [Erlang] pot - Erlang library for generating one time passwords compatible with Google Authenticator.
- 36β 2π΄ [Elixir] rsa -
public_keycryptography wrapper for Elixir. - 39β 15π΄ [Elixir] rsa_ex - Library for working with RSA keys.
- 19β 3π΄ [Elixir] siphash-elixir - Elixir implementation of the SipHash hash family.
- 0β 0π΄ [Erlang] tea_crypto - Tiny Encryption Algorithm implementation.
CSV
Libraries and implementations working with CSV.
- 27β 7π΄ [Elixir] cesso - CSV handling library for Elixir.
- 515β 94π΄ [Elixir] csv - CSV Decoding and Encoding for Elixir.
- 58β 3π΄ [Elixir] csv2sql - A fast and fully automated CSV to database importer.
- 33β 4π΄ [Elixir] csvlixir - A CSV reading/writing application for Elixir.
- 0β 1π΄ [Erlang] ecsv - Fast libcsv-based stream parser for Elixir.
- 823β 59π΄ [Elixir] nimble_csv - A simple and fast CSV parsing and dumping library for Elixir.
Data Visualization
Libraries for creating visualizations with data.
- 107β 7π΄ [Elixir] plox - Server-side rendered SVG graphing components for Phoenix and LiveView.
- 228β 8π΄ [Elixir] tucan - An Elixir plotting library on top of VegaLite.
- 205β 25π΄ [Elixir] vega_lite - Elixir bindings for Vega-Lite.
Date and Time
Libraries for working with dates and times.
- 10β 2π΄ [Elixir] block_timer - Macros to use :timer.apply_after and :timer.apply_interval with a block.
- 469β 34π΄ [Elixir] calendar - Calendar is a date and time library for Elixir.
- 5β 0π΄ [Elixir] calendarific - Calendarific is a wrapper for the holiday API Calendarific.
- 3β 0π΄ [Elixir] calixir - Calixir is a port of the Lisp calendar software calendrica-4.0 to Elixir.
- 90β 15π΄ [Elixir] chronos - An Elixir date/time library.
- 230β 33π΄ [Elixir] cocktail - Elixir date recurrence library based on iCalendar events.
- 48β 12π΄ [Elixir] cronex - Cron like system you can mount in your supervision tree.
- 101β 35π΄ [Elixir] crontab - A Cron Expressions Parser, Composer & Date Candidate Finder.
- 3β 1π΄ [Elixir] emojiclock - An Elixir module for giving you an emoji clock for a given hour.
- 24β 13π΄ [Elixir] ex_ical - ICalendar parser.
- 200β 28π΄ [Elixir] filtrex - A library for performing and validating complex SQL-like filters from a client (e.g. smart filters).
- 46β 3π΄ [Elixir] good_times - Expressive and easy to use datetime functions.
- 25β 3π΄ [Elixir] jalaali - Jalaali calendar implementation for Elixir.
- 2β 0π΄ [Elixir] milliseconds - Simple library to work with milliseconds in Elixir.
- 27β 1π΄ [Elixir] moment - Parse, validate, manipulate, and display dates in Elixir.
- 53β 2π΄ [Elixir] open_hours - Time calculations using business hours.
- 2416β 153π΄ [Elixir] quantum - Cron-like job scheduler for Elixir applications.
- 53β 6π΄ [Elixir] repeatex - Natural language parsing for repeating dates.
- 12β 2π΄ [Elixir] timelier - A cron-style scheduler for Elixir.
- 1806β 407π΄ [Elixir] timex - Easy to use Date and Time modules for Elixir.
- 9β 4π΄ [Elixir] timex_interval - A date/time interval library for Elixir projects, based on Timex.
- 325β 114π΄ [Elixir] tzdata - The timezone database in Elixir.
Debugging
Libraries and tools for debugging code and applications.
- 275β 19π΄ [Elixir] beaker - Statistics and Metrics library for Elixir.
- 23β 0π΄ [Elixir] booter - Boot an Elixir application, step by step.
- 161β 8π΄ [Elixir] dbg - Distributed tracing for Elixir.
- 428β 85π΄ [Perl] eflame - Flame Graph profiler for Erlang.
- 439β 127π΄ [Erlang] eper - Erlang performance and debugging tools.
- 6β 0π΄ [Elixir] ether - Ether provides functionality to hook Elixir into the Erlang debugger.
- 406β 11π΄ [Elixir] ex_debug_toolbar - A toolbar for Phoenix projects to interactively debug code and display useful information about requests: logs, timelines, database queries etc.
- 122β 6π΄ [Elixir] exrun - Distributed tracing for Elixir with rate limiting and simple macro-based interface.
- 64β 6π΄ [Elixir] extrace - Elixir wrapper for Recon Trace.
- 180β 22π΄ [Elixir] git_hooks - Add git hooks to Elixir projects.
- 15β 1π΄ [Elixir] inspector - A simple one-line module that allows a more friendly debugging experience.
- 1531β 95π΄ [Erlang] observer_cli - Visualize Elixir & Erlang nodes on the command line, it aims to help developers debug production systems.
- 85β 13π΄ [Elixir] quaff - The Debug module provides a simple helper interface for running Elixir code in the erlang graphical debugger.
- 262β 16π΄ [Elixir] rexbug - An Elixir wrapper for the
redbugproduction-friendly Erlang tracing debugger. - 1326β 47π΄ [CSS] visualixir - A process visualizer for remote BEAM nodes.
Deployment
Installing and running your code automatically on other machines.
- akd - Capistrano like, Configurable, and easy to set up Elixir Deployment Automation Framework. - :fire: :x: Broken link
- 297β 49π΄ [Python] ansible-elixir-stack - 1-command setup & deploys to servers, with first-class support for Phoenix apps.
- 399β 24π΄ [Elixir] bootleg - Simple deployment and server automation for Elixir.
- 40β 6π΄ [Elixir] bottler - Bottler is a collection of tools that aims to help you generate releases, ship them to your servers, install them there, and get them live on production.
- 1973β 186π΄ [Shell] edeliver - Deployment for Elixir and Erlang.
- 176β 10π΄ [Elixir] elixir-on-docker - A project template to get started developing clustered Elixir applications for cloud environments.
- 12β 1π΄ [Elixir] exdm - Deploy Elixir applications via mix tasks.
- 13β 2π΄ [Elixir] exreleasy - Dead simple and Mix friendly tool for releasing Elixir applications.
- 493β 16π΄ [Elixir] gatling - Collection of mix tasks to automatically create a exrm release from git and launch/upgrade it on your server.
- Gigalixir - A fully-featured PaaS designed for Elixir. Supports clustering, hot upgrades, and remote console/observer. Free to try without a credit card.
- 812β 328π΄ [Shell] heroku-buildpack-elixir - Heroku buildpack to deploy Elixir apps to Heroku.
Documentation
Libraries and tools for creating documentation.
- 372β 77π΄ [Elixir] bureaucrat - Generate Phoenix API documentation from tests.
- 1614β 367π΄ [Elixir] ex_doc - ExDoc is a tool to generate documentation for your Elixir projects.
- 63β 7π΄ [CSS] ex_doc_dash - Formatter for ExDoc to generate docset documentation for use in Dash.app.
- 22β 1π΄ [Elixir] hexdocset - Convert hex doc to Dash.app's docset format.
- inch-ci - Documentation badges for Ruby & Elixir.
- 57β 17π΄ [Elixir] maru_swagger - Add swagger compliant documentation to your maru API.
- 26β 10π΄ [Elixir] phoenix_api_docs - Generate API Blueprint documentation from controllers and tests in the Phoenix framework.
- 711β 185π΄ [Elixir] phoenix_swagger - Provides swagger integration to the Phoenix framework.
- 61β 4π΄ [Elixir] xcribe - Generate API documentation from tests using Swagger (OpenAPI) or API Blueprint specification.
Domain-specific language
Specialized computer languages for a particular application domain.
- 4402β 559π΄ [Elixir] Absinthe Graphql - Fully featured GraphQL library.
- 28β 1π΄ [Elixir] absinthe_gen - Scaffold generator for Absithne.
- 85β 14π΄ [Elixir] JSON-LD.ex - An implementation of the JSON-LD standard for RDF.ex.
- 126β 9π΄ [Elixir] RDF.ex - An implementation of the RDF data model in Elixir.
- 45β 2π΄ [Elixir] SPARQL.ex - An implementation of the SPARQL standards in Elixir.
ECMAScript
Implementations working with JavaScript, JScript or ActionScript.
- 1565β 68π΄ [Elixir] elixirscript - A transcompiler from Elixir to Javascript.
- 104β 11π΄ [Elixir] estree - A implementation of the SpiderMonkey Parser API in Elixir.
- 99β 20π΄ [Elixir] phoenix_gon - Allow you to pass Phoenix environment or controller variables to JavaScript without problems.
- 21β 4π΄ [Elixir] phoenix_routes_js - Phoenix routes helpers in JavaScript code and browser console.
Working with Email and stuff.
- 1960β 340π΄ [Elixir] bamboo - Composable, testable and adapter based email library. Out of the box support for rendering with Phoenix and a plug for previewing sent emails in dev.
- 80β 16π΄ [Elixir] burnex - Burner email (temporary address) detector.
- 30β 5π΄ [Elixir] echo - A meta-notification system; Echo checks notification preferences & dispatches notifications.
- 5β 5π΄ [Elixir] ex_postmark - Postmark adapter for sending template emails in Elixir.
- 718β 293π΄ [Erlang] gen_smtp - A generic Erlang SMTP server and client that can be extended via callback modules.
- 54β 23π΄ [Elixir] gmail - A simple Gmail REST API client for Elixir.
- 494β 70π΄ [Elixir] mail - An RFC2822 implementation in Elixir, built for composability.
- 41β 18π΄ [Elixir] mailer - A simple SMTP mailer.
- 66β 23π΄ [Elixir] mailibex - Library containing Email-related implementations in Elixir: dkim, spf, dmark, mimemail, smtp.
- 204β 70π΄ [Elixir] mailman - Mailman provides a clean way of defining mailers in your Elixir applications.
- pop3mail - Pop3 client to download email (including attachments) from the inbox via the commandline or Elixir API.
- 110β 8π΄ [Elixir] ravenx - Notification dispatch library for Elixir applications.
- 46β 5π΄ [HTML] smoothie - Smoothie inline styles of your email templates, and generates a plain text version from the HTML.
- 1526β 261π΄ [Elixir] swoosh - Compose, deliver and test your Emails (with attachments!) easily in Elixir with adapters for SMTP, Sendgrid, Mandrill, Mailgun, Postmark and lots others, plus Phoenix integration with mailbox preview.
Embedded Systems
Embedded systems development.
- nerves - A framework for writing embedded software in Elixir.
Encoding and Compression
Transforming data in different formats or compressing it.
- 33β 9π΄ [Elixir] ex_rlp - Elixir implementation of Ethereum's RLP (Recursive Length Prefix) encoding.
- 1β 0π΄ [Elixir] huffman - Huffman encoding and decoding in Elixir.
Errors and Exception Handling
Working with errors and exceptions.
- 292β 90π΄ [Elixir] AppSignal Elixir - The official AppSignal package for Elixir.
- 39β 3π΄ [Elixir] elixir_error_message - Simple error helpers to make errors in your system predictable and easy to render to JSON or in logs.
- 297β 10π΄ [Elixir] exceptional - Helpers for happy-path programming & exception handling.
- 44β 3π΄ [Elixir] happy - Happy path programming, alternative to elixir
withform. - 605β 20π΄ [Elixir] OK - Elegant error handling with result monads, featuring a simple & powerful
withconstruct and a happy path pipe operator. - 694β 216π΄ [Elixir] sentry-elixir - The Official Elixir client for Sentry.
Eventhandling
Sending/Emitting and receiving/handling Events in Elixir.
- 7β 0π΄ cizen - Build highly concurrent, monitorable, and extensible applications with a collection of sagas.
- 703β 42π΄ [Elixir] event_bus - Simple event bus implementation with topic filtering and built-in event store and event watcher.
- 106β 47π΄ [Erlang] goldrush - Small, Fast event processing and monitoring for Erlang/OTP applications.
- 288β 8π΄ [Elixir] reaxive - Reaxive is a reactive event handling library, inspired by Elm and Reactive Extensions.
- 17β 2π΄ [Elixir] wait_for_it - Provides convenient and easy-to-use facilities for synchronizing concurrent activities.
Examples and funny stuff
Example code and stuff too funny or curious not to mention.
- 3β 0π΄ [Elixir] butler_cage - A Butler plugin for showing silly photos of Nick Cage.
- 2β 0π΄ [Elixir] butler_tableflip - Flipping tables with butler.
- 2768β 247π΄ [Elixir] changelog.com - CMS that runs changelog.com built with Phoenix 1.4.
- 217β 20π΄ [Elixir] coderplanets.com - GraphQL api for coderplanets.com built with Phoenix 1.4 and Absinthe.
- 14β 1π΄ [Elixir] dice - Roll the dice, in Elixir.
- 2402β 614π΄ [Elixir] elixir_koans - Elixir koans is a fun, easy way to get started with the elixir programming language.
- 4β 0π΄ [Elixir] ex_iss - This package is for interfacing with the Open Notify API to information such as the ISS's current location, crew, and when it will pass over a location.
- 12β 1π΄ [Elixir] feedx - Add social feed functionality to current applications. Exemplify OTP umbrella app, with 3 apps. Thin phoenix controllers.
- 22β 3π΄ [Elixir] harakiri - Help applications kill themselves.
- 131β 13π΄ [Elixir] hello_phoenix - Application template for SPAs with Phoenix, React and Redux.
- 1170β 309π΄ [Elixir] hexpm - Source code for the hex package manager site built with Phoenix 1.3.
- 248β 59π΄ [Elixir] koans - Learn Elixir by using elixir-koans.
- 7β 0π΄ [Elixir] lolcat - This is the clone of busyloop/lolcat. But it does not support animation and some features of the original.
- 3093β 184π΄ [Elixir] magnetissimo - Web application that indexes all popular torrent sites, and saves it to the local database.
- 327β 22π΄ [Elixir] oop - OOP in Elixir.
- 819β 96π΄ [Elixir] phoenix-chat-example - A step-by-step example/tutorial for building a Chat app in Phoenix for complete beginners. Covers testing, docs and deployment. Phoenix
1.5.3. - 291β 21π΄ [Elixir] phoenix-ecto-encryption-example - A comprehensive example/tutorial showing people how to use Ecto Types to transparently encrypt/decrypt data in a Phoenix 1.4 app.
- 160β 14π΄ [JavaScript] phoenix-flux-react - An experiment with Phoenix Channels, GenEvents, React and Flux.
- 421β 42π΄ [Elixir] phoenix-liveview-counter-tutorial - complete beginners step-by-step tutorial building a real time counter in Phoenix
1.5.3and LiveView0.14.1. - 209β 17π΄ [Elixir] phoenix-todo-list-tutorial - A complete beginners step-by-step tutorial for building a Todo List from scratch in Phoenix
1.5.3. - 892β 140π΄ [Elixir] real world example app - Elixir / Phoenix implementation of RealWorld.io backend specs - a Medium clone.
- 0β 0π΄ rollex - Elixir library using a Pratt Parser algorithm to calculate dice rolls.
- 3β 0π΄ [Elixir] rubix - A very simple (and barely-functioning) Ruby runner for Elixir.
- 67β 4π΄ [Elixir] stranger - Elixir Phoenix app to chat anonymously with a randomly chosen stranger.
- 507β 113π΄ [Elixir] tilex - Source code for Hashrocket's TIL website built with Phoenix 1.3.
- 68β 7π΄ [Elixir] weather - A command line weather app built using Elixir.
Feature Flags and Toggles
Libraries to manage feature toggles (AKA feature flags): ON/OFF values that can be toggled at runtime through some interface
- 21β 5π΄ [Elixir] ConfigCat - Elixir SDK for ConfigCat hosted feature flag service.
- 107β 5π΄ [Elixir] flippant - Feature flipping for the Elixir world.
- 1166β 96π΄ [Elixir] fun_with_flags - A feature toggle library using Redis or Ecto for persistence, an ETS cache for speed and PubSub for distributed cache busting. Comes with a management web UI for Phoenix and Plug.
- 77β 3π΄ [Elixir] molasses - A feature toggle library using redis or SQL (using Ecto) as a backing service.
Feeds
Libraries working with feeds like RSS or ATOM.
- 67β 3π΄ [Elixir] atomex - ATOM feed builder with a focus on standards compliance, security and extensibility.
- 44β 11π΄ [Erlang] feeder - Parse RSS and Atom feeds.
- 72β 12π΄ [Elixir] feeder_ex - RSS feed parser. Simple wrapper for feeder.
- 15β 9π΄ [Elixir] feedme - RSS/Atom parser built on erlang's xmerl xml parser.
Files and Directories
Libraries and implementations for working with files and directories.
- Belt - Extensible file upload library with support for SFTP, S3 and Filesystem storage.
- 43β 14π΄ [Elixir] dir_walker - DirWalker lazily traverses one or more directory trees, depth first, returning successive file names.
- 28β 3π΄ [Elixir] elixgrep - A framework for doing Hadoop style Map/Reduce operations on collections of files.
- 84β 11π΄ [Elixir] ex_guard - ExGuard is a mix command to handle events on file system modifications.
- 13β 8π΄ [Elixir] ex_minimatch - Globbing paths without walking the tree!.
- 90β 19π΄ [Elixir] exfile - File upload handling, persistence, and processing in Elixir and Plug.
- 278β 61π΄ [Elixir] exfswatch - A file change watcher wrapper based on fs.
- 53β 6π΄ [Elixir] eye_drops - Configurable mix task to watch file changes and run the corresponding command.
- 24β 2π΄ [Elixir] format_parser.ex - Elixir library to figure out the type and the format of a file.
- 239β 74π΄ [Erlang] fs - Erlang FileSystem Listener.
- 4β 0π΄ [Elixir] fwatch - A callback-based file watcher based on fs.
- 6β 0π΄ [Elixir] ivcu - File Validator, Converter, and Uploader.
- 40β 7π΄ [Elixir] librex - Elixir library to convert office documents to other formats using LibreOffice.
- 22β 8π΄ [Elixir] Radpath - Path library for Elixir, inspired by Python's Enhpath.
- 16β 5π΄ [Elixir] sentix - A cross-platform file watcher for Elixir based on fswatch.
- 42β 9π΄ [Elixir] sizeable - An Elixir library to make file sizes human-readable.
- 822β 92π΄ [Elixir] waffle - Flexible file upload and attachment library for Elixir.
- 29β 0π΄ [Elixir] zarex - Filename sanitization for Elixir.
Forms
Handling web forms and similar stuff.
- 39β 16π΄ [Erlang] forms - Erlang Business Documents Generator.
Framework Components
Standalone component from web development frameworks.
- 263β 179π΄ [Elixir] absinthe_plug - Plug support for Absinthe.
- 70β 11π΄ [Elixir] access pass - Authentication framework that can be used with or outside of phoenix. Similar to Addict but geared towards API usage.(Docs).
- 639β 96π΄ [Elixir] addict - User authentication for Phoenix Framework.
- 5β 1π΄ [Elixir] airbrake_plug - Report errors in your Plug stack or whatever to Airbrake.
- 845β 79π΄ [Elixir] Backpex - Highly customizable administration panel for Phoenix LiveView applications. (Docs, Demo).
- 98β 3π΄ [Elixir] better_params - Elixir Plug for cleaner request params in web apps.
- 20β 4π΄ [Elixir] blaguth - Basic Access Authentication in Plug applications.
- 2030β 257π΄ [Elixir] commanded - Command handling middleware for Command Query Responsibility Segregation (CQRS) applications.
- 403β 79π΄ [Elixir] cors_plug - An Elixir plug that adds CORS headers to requests and responds to preflight requests (OPTIONS).
- 537β 37π΄ [Elixir] corsica - Elixir library for dealing with CORS requests.
- 20β 0π΄ [Elixir] crudex - CRUD utilities for Phoenix and Ecto.
- 158β 18π΄ [Elixir] dayron - A repository similar to
Ecto.Repothat works with REST API requests instead of a database. - 1197β 264π΄ [Elixir] ex_admin - ExAdmin is an auto administration package for Elixir and the Phoenix Framework.
- 21β 2π΄ [Elixir] exdjango - A few elixir libraries for working with django.
- 12β 1π΄ [Elixir] exrecaptcha - Simple reCaptcha display/verify code for Elixir applications.
- 105β 9π΄ [Elixir] filterable - Simple query params filtering for Phoenix framework inspired by Rails has_scope.
- 24β 3π΄ [Elixir] graphql_parser - An Elixir binding for libgraphqlparser.
- 13β 5π΄ [Elixir] http_router - HTTP Router with various macros to assist in developing your application and organizing your code.
- 229β 41π΄ [Elixir] kerosene - Pagination for Ecto and Phoenix.
- 581β 36π΄ [Elixir] live_vue - End-to-end reactivity for Phoenix LiveView and Vue.
- 16β 3π΄ [Elixir] mellon - An authentication module for Plug applications.
- 96β 11π΄ [Elixir] multiverse - Plug that allows to add version compatibility layers via API Request/Response Gateways.
- 373β 50π΄ [Elixir] params - Use Ecto to enforce/validate parameters structure, akin to Rails' strong parameters.
- 579β 128π΄ [Elixir] phoenix_ecto - Phoenix and Ecto integration.
- 158β 41π΄ [Elixir] phoenix_haml - Phoenix Template Engine for Haml.
- 467β 228π΄ [Elixir] phoenix_html - Phoenix.HTML functions for working with HTML strings and templates.
- 27β 12π΄ [Elixir] phoenix_html_sanitizer - HTML Sanitizer integration for Phoenix.
- 31β 12π΄ [Elixir] phoenix_html_simplified_helpers - Some helpers for phoenix html (truncate, time_ago_in_words, number_with_delimiter).
- 18β 5π΄ [Elixir] phoenix_linguist - A project that integrates Phoenix with Linguist, providing a plug and view helpers. It looks abandoned: its last commit was on 2015 and its CI runs Elixir 1.0.3.
- 332β 92π΄ [Elixir] phoenix_live_reload - Provides live-reload functionality for Phoenix.
- 31β 11π΄ [Elixir] phoenix_meta_tags - Generate meta tags for a website.
- 28β 4π΄ [Elixir] phoenix_pubsub_postgres - Postgresql PubSub adapter for Phoenix apps.
- 47β 23π΄ [Elixir] phoenix_pubsub_rabbitmq - RabbitMQ adapter for Phoenix's PubSub layer.
- 183β 67π΄ [Elixir] phoenix_pubsub_redis - The Redis PubSub adapter for the Phoenix framework.
- 25β 3π΄ [Elixir] phoenix_pubsub_vernemq - The VerneMQ MQTT pubsub adapter for the Phoenix framework.
- 311β 67π΄ [Elixir] phoenix_slime - Slim template support for Phoenix.
- 869β 98π΄ [Elixir] phoenix_storybook - A pluggable storybook for your Phoenix components.
- 18β 8π΄ [Elixir] phoenix_svg - Use inline SVGs in Phoenix.
- 163β 37π΄ [Elixir] phoenix_token_auth - Token authentication solution for Phoenix. Useful for APIs or single page apps.
- 20β 11π΄ [Elixir] phoenix_turnstile - Phoenix components and helpers for using CAPTCHAs with Cloudflare Turnstile.
- 139β 8π΄ [Elixir] phx_component_helpers - Extensible live_components, without boilerplate.
- 3016β 610π΄ [Elixir] plug - A specification and conveniences for composable modules in between web applications.
- 31β 5π΄ [Elixir] plug_accesslog - Plug for writing access logs.
- 15β 1π΄ [Elixir] plug_and_play - Set up a Plug application with less boilerplate.
- 68β 13π΄ [Elixir] plug_auth - Collection of authentication-related plugs.
- 40β 8π΄ [Elixir] plug_canonical_host - Plug to ensure all requests are served from a single canonical host.
- 75β 8π΄ [Elixir] plug_checkup - Plug for adding simple health checks to your app.
- 24β 9π΄ [Elixir] plug_cloudflare - Inspired by mod_cloudflare, this Elixir plug parses Cloudflares CF-Connecting-IP HTTP request header into Plug.Conn's remote_ip field.
- 25β 8π΄ [Elixir] plug_forward_peer - Very simple plug which reads X-Forwarded-For or Forwarded header according to RFC7239 and fill conn.remote_ip with the root client ip.
- 5β 0π΄ [Elixir] plug_fprof - A Plug that adds fprof tracing to requests, to allow for easy profiling.
- 35β 4π΄ [Elixir] plug_heartbeat - A plug for responding to heartbeat requests.
- 39β 4π΄ [Elixir] plug_jwt - Plug for JWT authentication.
- 10β 0π΄ [Elixir] plug_password - Plug for adding simple cookie-based authentication.
- 98β 29π΄ [Elixir] plug_rails_cookie_session_store - Rails compatible Plug session store.
- 7β 1π΄ [Elixir] plug_redirect_https - Plug to redirect http requests to https requests behind a reverse proxy.
- 27β 3π΄ [Elixir] plug_require_header - Require and extract HTTP headers and handle missing ones.
- 12β 2π΄ [Elixir] plug_response_header - easy manipulation of HTTP response headers.
- 23β 1π΄ [Elixir] plug_ribbon - Injects a ribbon to your web application in the development environment.
- 30β 1π΄ [Elixir] plug_secex - Plug that adds various HTTP Headers to make Phoenix/Elixir app more secure.
- 15β 7π΄ [Elixir] plug_session_memcached - A very simple memcached session store for Elixir's plug.
- 1β 0π΄ [Elixir] plug_sigaws - AWS Signature V4 authentication protection for Phoenix/Plug Routes (Docs).
- 49β 15π΄ [Elixir] plug_statsd - A plug for automatically sending timing and count metrics to statsd.
- 18β 1π΄ [Elixir] pluggable - Build
plug-like pipelines with your own token (instead of%Plug.Conn{}). - 19β 2π΄ [Elixir] plugs - Collection of Plug middleware for web applications.
- 66β 41π΄ [Elixir] plugsnag - Bugsnag notifier for Elixir's plug.
- 19β 17π΄ [Elixir] raygun - Capture bugs and send them to Raygun.
- 508β 40π΄ [Elixir] react_phoenix - Render React.js components in Phoenix views focusing on easy installation and Brunch compatibility.
- 113β 59π΄ [Elixir] recaptcha - A simple reCaptcha 2 library for Elixir applications.
- 4β 0π΄ [Elixir] resin - Resin is a plug that will add a configurable delay to every request that's passing through it, unless run in production.
- 4β 0π΄ [Elixir] revision_plate_ex - Plug application and middleware that serves endpoint returns application's REVISION.
- rummage_ecto - A configurable framework to search, sort and paginate Ecto Queries. - :fire: :x: Broken link
- rummage_phoenix - A support framework for searching, sorting and paginating models in Phoenix, with HTML support. - :fire: :x: Broken link
- 7β 0π΄ [Elixir] scaffold - A mix task for creating new projects based on templates fetched from a Git-repo.
- 557β 63π΄ [Elixir] scrivener - Paginate your Ecto queries.
- 53β 11π΄ [Elixir] scrivener_headers - Helpers for paginating API responses with Scrivener and HTTP headers.
- 124β 207π΄ [Elixir] scrivener_html - Helpers built to work with Scrivener's page struct to easily build HTML output for various CSS frameworks.
- 105β 18π΄ [Elixir] sentinel - An authentication framework for Phoenix extending guardian with routing and other basic functionality.
- 2135β 146π΄ [Elixir] surface - A server-side rendering component library for Phoenix.
- 1174β 85π΄ [Elixir] torch - Torch is a rapid admin generator for Phoenix apps. It uses generators rather than DSLs to ensure that the code remains maintainable.
- 25β 15π΄ [Elixir] trailing_format_plug - An Elixir plug to support legacy APIs that use a rails-like trailing format.
- turn_the_page - Fast, simple and lightweight pagination system for your Elixir application.
- 72β 9π΄ [Elixir] webassembly - Web DSL for Elixir.
- 2β 0π΄ [Elixir] weebo - An XML-RPC parser/formatter for Elixir, with full support for datatype mapping.
Frameworks
Web development frameworks.
- 2486β 422π΄ [Elixir] Ash Framework - A declarative, resource-oriented application framework for Elixir.
- 16β 2π΄ [Elixir] exelli - An Elli Elixir wrapper with some sugar syntax goodies.
- Flowbite - An open-source UI component library built with Tailwind CSS and compatible with Phoenix/Elixir.
- 1499β 115π΄ [Elixir] Hologram - Full stack Elixir web framework that intelligently transpiles Elixir client-side code to JavaScript.
- 960β 54π΄ [Elixir] kitto - A framework for interactive dashboards.
- 1340β 167π΄ [Erlang] n2o - Distributed Application Server.
- 58β 33π΄ [Erlang] nitro - Nitrogen-compatible Web Framework.
- 1054β 101π΄ [Elixir] Petal Components - A set of HEEX components that makes it easy for Phoenix developers to build beautiful web apps.
- 23154β 3110π΄ [Elixir] phoenix - Elixir Web Framework targeting full-featured, fault tolerant applications with realtime functionality.
- 194β 6π΄ [Elixir] placid - A REST toolkit for building highly-scalable and fault-tolerant HTTP APIs with Elixir.
- 268β 27π΄ [Elixir] rackla - API Gateways in Elixir.
- 123β 13π΄ [Elixir] relax - Simple Elixir implementation of a jsonapi.org server.
- 83β 22π΄ [Erlang] rest - Micro-REST framework with typed JSON.
- 601β 67π΄ [Elixir] RIG - Create low-latency, interactive user experiences for stateless microservices.
- 430β 26π΄ [Elixir] sugar - Modular web framework for Elixir.
- 417β 26π΄ [Elixir] trot - An Elixir web micro-framework.
Games
Libraries for and implementations of games.
- 135β 16π΄ [Erlang] Binbo - A chess representation written in Erlang using Bitboards, ready for use on game servers.
- ECSx - An Entity-Component-System framework providing a battle ship game as a tutorial (read more on Dockyard blog).
- 122β 12π΄ entice - A distributed Entity-Component-System framework, providing its own example MMORPG server.
- 48β 1π΄ [Elixir] mines - A minesweeper clone in the terminal.
- 37β 5π΄ [JavaScript] pictionary - A multiplayer guessing and drawing game (skribbl.io clone).
- 69β 11π΄ [Elixir] rayex - Raylib bindings to Elixir for games programming.
- 14β 1π΄ [Elixir] Rovex - An implementation of the Mars Rover kata in Elixir transformed in a basic multiplayer game.
- 22β 0π΄ [Elixir] vim_snake - A classical multiplayer snake game with Vim-style keybinding built with Phoenix framework.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- 29β 7π΄ [Elixir] distance_api_matrix - Provide distance and heading calculations via Google distance matrix api.
- 679β 100π΄ [Elixir] geo - A collection of GIS functions for Elixir.
- 156β 23π΄ [Elixir] geocalc - Calculate distance, bearing and more between latitude/longitude points.
- 128β 62π΄ [Elixir] geocoder - A simple, efficient geocoder/reverse geocoder with a built-in cache.
- 29β 11π΄ [Elixir] geohash - Geohash encode/decode library.
- 1β 1π΄ [Elixir] geohash_nif - Drop in replacement for Geohash encode/decode library implemented as a NIF.
- 12β 6π΄ [Elixir] geohax - Geohash encoding and decoding with neighbors finder.
- 126β 24π΄ [Elixir] geoip - Find geolocation for a given IP, hostname or
Plug.Conn. - 197β 19π΄ [Elixir] geolix - MaxMind GeoIP2 database reader/decoder.
- 24β 7π΄ [Elixir] geonames - A simple Elixir wrapper around the GeoNames API.
- 17β 1π΄ [Elixir] ip2location - An Elixir library for IP2Location database.
- 7β 1π΄ [Elixir] ipgeobase - Find Russian and Ukraine city by IP address and find country for other country.
- 10β 7π΄ [C] proj - Elixir coordinate conversion library using OSGeo's PROJ.4.
- 7β 1π΄ [Elixir] segseg - Segment-segment intersection classifier and calculator.
- 7β 0π΄ [Elixir] srtm - Query locations for elevation data from the NASA Shuttle Radar Topography Mission.
- 173β 26π΄ [Elixir] topo - A Geometry library for Elixir that calculates spatial relationships between two geometries.
- 11β 3π΄ [Elixir] wheretz - Elixir version of Ruby gem for lookup of timezone by georgraphic coordinates.
GUI
Libraries for writing Graphical User Interfaces.
- 2056β 138π΄ [Elixir] scenic - Portable 2D UI framework.
Hardware
Hardware related things like I/O interfaces and such.
- elixir-circuits - Elixir access to hardware I/O interfaces such as GPIO, I2C, and SPI (old version elixir_ale). - :fire: :x: Broken link
- 2491β 206π΄ [Elixir] nerves - Framework for building firmware for platforms like Raspberry Pi and BeagleBone Black.
HTML
Libraries and implementations working with HTML (for xml tools please go to the XML section).
- 2147β 163π΄ [Elixir] floki - A simple HTML parser that enables searching using CSS like selectors.
- 295β 72π΄ [Elixir] html_sanitize_ex - HTML sanitizer for Elixir.
- 325β 25π΄ [Elixir] meseeks - A library for parsing and extracting data from HTML and XML with CSS or XPath selectors.
- 34β 5π΄ [Elixir] modest_ex - A library to do pipeable transformations on html strings with CSS selectors, e.g. find(), prepend(), append(), replace() etc.
- 15β 4π΄ [HTML] myhtmlex - Elixir/Erlang bindings for lexborisov's myhtml.
- 284β 64π΄ [Elixir] readability - Readability is for extracting and curating articles.
- 38β 4π΄ texas - Texas is a powerful abstraction over updating your clients using server-side rendering and server-side Virtual DOM diff/patching.
- 9β 2π΄ [C] tidy_ex - Elixir binding to the granddaddy of HTML tools http://www.html-tidy.org.
- 57β 1π΄ [Elixir] vnu-elixir - Elixir client for the Nu HTML Checker. Provides HTML, CSS, and SVG validation.
HTTP
Libraries for working with HTTP and scraping websites.
- 304β 25π΄ [Elixir] Ace - HTTP web server and client, supports http1 and http2.
- 72β 7π΄ [Elixir] cauldron - An HTTP/SPDY server as a library.
- 956β 88π΄ [Elixir] Crawler - A high performance web crawler in Elixir.
- 1116β 123π΄ [Elixir] Crawly - high-level web crawling & scraping framework for Elixir.
- 660β 74π΄ [Erlang] elli - Elli is a webserver you can run inside your Erlang application to expose an HTTP API.
- 22β 3π΄ [Elixir] etag_plug - A simple to use shallow ETag plug.
- 45β 4π΄ [Elixir] explode - An easy utility for responding with standard HTTP/JSON error payloads in Plug- and Phoenix-based applications.
- 746β 137π΄ [Elixir] exvcr - HTTP request/response recording library for Elixir, inspired by VCR.
- 1362β 146π΄ [Elixir] finch - An HTTP client with a focus on performance, built on top of Mint and NimblePool.
- 21β 3π΄ [Elixir] fuzzyurl - An Elixir library for parsing, constructing, and wildcard-matching URLs. Also available for Ruby and JavaScript.
- 948β 244π΄ [Erlang] gun - HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.
- 1417β 455π΄ [Erlang] hackney - Simple HTTP client written in Erlang.
- 12β 1π΄ [Elixir] http - HTTP server for Elixir.
- 5β 0π΄ [Elixir] http_digex - A module to create basic digest HTTP auth header.
- 61β 6π΄ [Elixir] http_proxy - Multi port HTTP Proxy.
- 2290β 349π΄ [Elixir] httpoison - Yet Another HTTP client for Elixir powered by hackney.
- 720β 99π΄ [Elixir] httpotion - Fancy HTTP client for Elixir, based on ibrowse.
- 17β 2π΄ [Elixir] ivar - A lightweight wrapper around HTTPoison that provides a fluent and composable way to build http requests.
- 1β 2π΄ [Erlang] lhttpc - A lightweight HTTP/1.1 client implemented in Erlang.
- 0β 0π΄ [Elixir] mint - Functional HTTP client for Elixir with support for HTTP/1 and HTTP/2.
- 29β 4π΄ [Elixir] mnemonic_slugs - A memorable, mnemonic slug generator in Elixir.
- 1890β 461π΄ [Erlang] mochiweb - MochiWeb is an Erlang library for building lightweight HTTP servers.
- 334β 37π΄ [Elixir] neuron - A GraphQL client for Elixir.
- 1β 0π΄ [Elixir] plug_wait1 - Plug adapter for the wait1 protocol.
- 407β 26π΄ [Elixir] raxx - Interface for HTTP webservers, frameworks and clients.
- 1327β 171π΄ [Elixir] req - A batteries-included HTTP client for Elixir.
- 82β 4π΄ [Elixir] river - An HTTP/2 client that is lightweight and lightning fast.
- 338β 41π΄ [Elixir] scrape - Scrape any website, article or RSS/Atom Feed with ease.
- 31β 7π΄ [Elixir] sparql_client - A SPARQL protocol client for Elixir.
- 28β 6π΄ [Elixir] SpiderMan - A base-on Broadway fast high-level web crawling & scraping framework for Elixir.
- 2078β 365π΄ [Elixir] tesla - HTTP client library, with support for middleware and multiple adapters.
- 12β 4π΄ [Elixir] Tube - Pure Elixir WebSocket client library.
- 14β 10π΄ [Elixir] uri_query - URI encode nested GET parameters and array values in Elixir.
- 18β 4π΄ [Elixir] uri_template - RFC6570 compliant URI template processor for Elixir.
- 63β 17π΄ [Elixir] web_socket - An exploration into a stand-alone library for Plug applications to easily adopt WebSockets.
- 119β 30π΄ [Elixir] webdriver - This is an implementation of the WebDriver protocol client. It currently supports PhantomJS, FireFox, ChromeDriver and remote webdriver servers (e.g. Selenium).
- 13β 2π΄ [Elixir] yuri - Simple struct for representing URIs.
Images
Libraries for working with and manipulating images.
- 58β 8π΄ [Elixir] alchemic_avatar - Elixir library for generating letter avatar from string.
- 44β 2π΄ [Elixir] artifact - File upload and on-the-fly processing for Elixir.
- 4β 2π΄ [Elixir] bump - A BMP file writer in pure Elixir.
- 32β 4π΄ [Elixir] chunky_svg - A library for drawing things with SVG.
- 106β 67π΄ [Elixir] cloudex - Cloudex is an Elixir library that can upload image files or urls to Cloudinary.
- 12β 0π΄ [Elixir] eikon - An Elixir library providing a read-only interface for image files.
- 13β 3π΄ [Elixir] elixir_exif - Parse exif tags and thumbnail data from jpeg files.
- 101β 5π΄ [Elixir] ex_image_info - An Elixir library to parse images (binaries) and get the dimensions, detected mime-type and overall validity for a set of image formats.
- 46β 21π΄ [Elixir] exexif - Pure Elixir library to extract TIFF and EFIX metadata from jpeg files.
- 8β 0π΄ [Elixir] exfavicon - An Elixir library for discovering favicons.
- gi - An Elixir wrapper for GraphicsMagick command line. - :fire: :x: Broken link
- 27β 3π΄ [Elixir] identicon - An Elixir library for generating 5x5 identicons.
- image64 - A tool for working with base64 encoded images.
- 118β 15π΄ [Elixir] imagineer - Image parsing in Elixir.
- 33β 10π΄ [Elixir] imgex - Unofficial client library for generating imgix URLs in Elixir.
- 585β 64π΄ [Elixir] mogrify - An Elixir wrapper for ImageMagick command line.
- 58β 10π΄ [Erlang] png - A pure Erlang library for creating PNG images. It can currently create 8 and 16 bit RGB, RGB with alpha, indexed, grayscale and grayscale with alpha images.
- 74β 7π΄ [Elixir] thumbnex - Create thumbnails from images and video screenshots.
- 4β 0π΄ [Elixir] thumbor_client - Client for Thumbor.
Instrumenting / Monitoring
Libraries for collecting and exporting metrics.
- 5β 0π΄ [Elixir] app_optex - Client for AppOptics API. Send metrics and tags to AppOptics time series service.
- 292β 90π΄ [Elixir] appsignal-elixir - Collects error and performance data from your Elixir applications and sends it to AppSignal.
- 825β 57π΄ [Elixir] elixometer - A light Elixir wrapper around exometer.
- 70β 17π΄ [Erlang] erlang-metrics - A generic interface to different metrics systems in Erlang.
- 528β 102π΄ [Erlang] exometer - Basic measurement objects and probe behavior in Erlang.
- 6β 0π΄ [Erlang] folsom_ddb - DalmatinerDB backend to store folsom metrics.
- 4β 5π΄ [Elixir] graphitex - Graphite/Carbon client for Elixir.
- 228β 44π΄ [Elixir] instream - InfluxDB driver for Elixir.
- 10β 2π΄ [Elixir] instrumental - An Elixir client for Instrumental.
- 64β 19π΄ [Elixir] newrelic.ex - Collects metrics from your Elixir/Phoenix application and sends them to NewRelic.
- 707β 134π΄ [Elixir] prom_ex - Prometheus metrics and Grafana dashboards for all of your favorite Elixir libraries.
- 354β 121π΄ [Erlang] prometheus - Prometheus.io monitoring system and time series database client in Erlang.
- 78β 22π΄ [Elixir] prometheus-ecto - Ecto instrumenter for prometheus.ex.
- 73β 19π΄ [Elixir] prometheus-phoenix - Phoenix instrumenter for prometheus.ex.
- 54β 38π΄ [Elixir] prometheus-plugs - Plugs instrumenters/exporter for prometheus.ex.
- 424β 66π΄ [Elixir] prometheus.ex - Elixir-friendly Prometheus.io monitoring system and time series database client.
- 53β 42π΄ [C++] prometheus_process_collector - Prometheus collector which exports the current state of process metrics including cpu, memory, file descriptor usage and native threads count as well as the process start and up times.
- 346β 53π΄ [Elixir] spandex - Platform agnostic tracing library originally developed for Datadog APM.
- 921β 74π΄ [Erlang] telemetry - Dynamic dispatching library for metrics and instrumentations.
- 926β 81π΄ [Elixir] wobserver - Web based metrics, monitoring, and observer.
JSON
Libraries and implementations working with JSON.
- 71β 12π΄ [Erlang] exjson - JSON parser and generator in Elixir.
- 638β 143π΄ [Elixir] ja_serializer - JSONAPI.org Serialization in Elixir.
- 1680β 179π΄ [Elixir] jason - A blazing fast JSON parser and generator in pure Elixir.
- 61β 21π΄ [Elixir] jazz - Yet another library to handle JSON in Elixir.
- 815β 105π΄ [Elixir] joken - Encodes and decodes JSON Web Tokens.
- 337β 120π΄ [Erlang] jose - JSON Object Signing and Encryption (JOSE) for Erlang and Elixir.
- 218β 40π΄ [Elixir] json - Native JSON library for Elixir.
- 11β 1π΄ [Elixir] json_pointer - Implementation of RFC 6901 which defines a string syntax for identifying a specific value within a JSON document.
- 8β 0π΄ [Elixir] json_stream_encoder - JsonStreamEncoder is a streaming encoder for streaming JSON to an IOish thing in Elixir.
- 145β 52π΄ [Elixir] json_web_token_ex - An Elixir implementation of the JSON Web Token (JWT) Standards Track (RFC 7519).
- 511β 76π΄ [Elixir] jsonapi - A project that will render your data models into JSONAPI Documents.
- 0β 0π΄ [Elixir] jsonc - Utilities for working with jsonc, a superset of json.
- 697β 216π΄ [Erlang] jsx - An Erlang application for consuming, producing, and manipulating json.
- 7β 1π΄ [Erlang] jwalk - Helper module for working with Erlang representations of JSON.
- 5β 0π΄ [Elixir] jwtex - A library to encode and decode JWT tokens.
- 2032β 214π΄ [Elixir] poison - Poison is a new JSON library for Elixir focusing on wicked-fast speed without sacrificing simplicity, completeness, or correctness.
- 47β 3π΄ [Elixir] tiny - Tiny, fast and fully compliant JSON parser for Elixir.
- 9β 0π΄ [Ruby] world_json - topojson country and state/province collections for elixir/erlang.
Languages
Languages built on top of Elixir.
- 1150β 25π΄ [Elm] Elchemy - Compiler allowing to translate Elm programming language code to Elixir.
- 41β 5π΄ [Elixir] lighthouse_scheme - A small Lisp-like language and interactive REPL, built in Elixir.
- 144β 12π΄ [Elixir] Monkey - Elixir implementation of an interpreter and REPL for the js-like Monkey programming language.
Lexical analysis
All about lexical analyser, lexer, scanner, tokenizer or compiler.
- 57β 4π΄ [Elixir] abnf_parsec - ABNF in and parser out.
- 63β 11π΄ [Elixir] ex_abnf - Parser for ABNF Grammars in Elixir.
- 33β 5π΄ [Elixir] lex_luthor - LexLuthor is a Lexer in Elixir which uses macros to generate a reusable lexers.
Logging
Logging infos and messages.
- 90β 1π΄ [Elixir] bunyan - Bunyan: An Elixir Logger.
- 181β 18π΄ [Elixir] ecto_dev_logger - An alternative logger for Ecto queries that helps in debugging.
- 65β 35π΄ [Elixir] exlager - Elixir binding for lager.
- 29β 30π΄ [Elixir] gelf_logger - A Logger backend that will generate Graylog Extended Log Format (GELF) messages.
- 183β 55π΄ [Elixir] honeybadger - Send logs and custom events to Honeybadger.
- 24β 13π΄ [Elixir] json_logger - JSON Logger is a logger backend that outputs elixir logs in JSON format.
- 42β 46π΄ [Erlang] lager - A logging framework for Erlang/OTP by basho.com.
- 29β 19π΄ [Elixir] lager_logger - A lager backend that forwards all log messages to Elixir's Logger.
- 28β 12π΄ [Elixir] logfmt - Logfmt is a module for encoding and decoding logfmt-style log lines.
- 72β 40π΄ [Elixir] logger_logstash_backend - A backend for the Elixir Logger that will send logs to the Logstash UDP input.
- 10β 4π΄ [Elixir] logglix - A logger backend for posting errors to Loggly.
- 213β 27π΄ [Elixir] logster - Easily parsable, one-line logging for Phoenix and Plug applications, inspired by Lograge.
- 52β 14π΄ [Elixir] metrix - Log custom app metrics to stdout for use by Librato and other downstream processors.
- 11β 5π΄ [Erlang] mstore - MStore is a experimental metric store build in erlang, the primary functions are open, new, get and put.
- 2β 1π΄ [Elixir] quiet_logger - A simple plug to suppress health check logging (e.g.: when using Kubernetes).
- 10β 2π΄ [Elixir] rogger - Elixir logger to publish log messages in RabbitMQ.
- 240β 52π΄ [Elixir] rollbax - Exception tracking and logging to Rollbar.
- 31β 10π΄ [Elixir] slack_logger_backend - A logger backend for posting errors to Slack.
- 86β 53π΄ [Erlang] syslog - Erlang port driver for interacting with syslog via syslog(3).
- 213β 29π΄ [Elixir] timber - Structured logging platform; turns raw text logs into rich structured events.
- 3β 0π΄ [Elixir] youtrack_logger_backend - A logger backend that will post messages to YouTrack (an issue tracker made by JetBrains).
Macros
Macros for faster and easier development. Sugar for your code.
- 18β 2π΄ [Elixir] anaphora - Anaphora is the anaphoric macro collection for Elixir. An anaphoric macro is one that deliberately captures a variable (typically it) from forms supplied to the macro.
- 12β 2π΄ [Elixir] apix - Simple convention and DSL for transformation of elixir functions to an API for later documentation and or validation.
- 4β 0π΄ [Elixir] backports - Use new functions in Elixir 1.1 and 1.2.
- 93β 11π΄ [Elixir] crudry - Crudry is an elixir library for DRYing CRUD of Phoenix Contexts and Absinthe Resolvers.
- 104β 8π΄ [Elixir] eventsourced - Build functional, event-sourced domain models.
- 175β 5π΄ [Elixir] expat - Reusable, composable patterns across Elixir libraries.
- 26β 0π΄ [Elixir] guardsafe - Macros expanding into code that can be safely used in guard clauses.
- 2β 1π΄ [Elixir] kwfuns - Macros to create functions with syntax based keyword parameters with default values.
- 0β 0π΄ [Erlang] lineo - parse transform for accurate line numbers.
- 93β 8π΄ [Elixir] matcha - First-class match specifications for Elixir
:etsquerying and function call tracing. - 49β 10π΄ [Elixir] mdef - Easily define multiple function heads in Elixir.
- 28β 2π΄ [Elixir] named_args - Allows named arg style arguments in Elixir.
- 101β 2π΄ [Elixir] ok_jose - Pipe elixir functions that match
{:ok,_},{:error,_}tuples or custom patterns. - 371β 21π΄ [Elixir] opus - A framework for pluggable business logic components.
- 364β 17π΄ [Elixir] pathex - Zero-dependency, blazing fast functional lenses.
- 58β 3π΄ [Elixir] pattern_tap - Macro for tapping into a pattern match while using the pipe operator.
- 34β 1π΄ [Elixir] pipe_here - Easily pipe values into any argument position.
- 323β 22π΄ [Elixir] pipes - Macros for more flexible composition with the Elixir Pipe operator.
- 29β 2π΄ [Elixir] pit - Transform values as they flow inside a pipe.
- 0β 0π΄ [Erlang] rebind - rebind parse transform for Erlang.
- 13β 2π΄ [Elixir] rulex - Simple rule handler using Elixir pattern matching.
- 234β 10π΄ [Elixir] shorter_maps - ~M sigil for map shorthand.
~M{id name} ~> %{id: id, name: name}. - 3β 0π΄ [Elixir] then - Simple way to set after-function callback.
- 770β 38π΄ [Elixir] typed_struct - An Elixir library for defining structs with a type without writing boilerplate code.
- 19β 1π΄ [Elixir] typed_structor - A library for defining structs with types effortlessly.
- 13β 3π΄ [Elixir] unsafe - Generate easy unsafe (!) bindings for Elixir functions.
Markdown
Libraries and tools working with Markdown and such.
- 97β 13π΄ [C] cmark - Elixir NIF for CommonMark (in C), a parser following the CommonMark spec.
- 21β 4π΄ [Elixir] discount - Elixir NIF for discount, a Markdown parser.
- 895β 155π΄ [Elixir] earmark - Markdown parser for Elixir.
- 88β 18π΄ [C] Markdown - Implemented entirely as a NIF binding to the Hoedown library.
- 66β 11π΄ [Elixir] Pandex - Lightweight Elixir wrapper for Pandoc. Converts Markdown, CommonMark, HTML, Latex, HTML, HTML5, opendocument, rtf, texttile, asciidoc to each other.
Miscellaneous
Useful libraries or tools that don't fit in the categories above.
- 31β 12π΄ [Elixir] address_us - Library for parsing US Addresses into their individual parts.
- 290β 10π΄ [Elixir] AlloyCI - AlloyCI is a Continuous Integration, Deployment, and Delivery coordinator, written in Elixir, that takes advantage of the GitLab CI Runner, and its capabilities as executor, to prepare and run your pipelines.
- 277β 19π΄ [Elixir] Apex - Awesome Print for Elixir.
- 2228β 160π΄ [Erlang] AtomVM - AtomVM allows to run Elixir/Erlang code on embedded devices such as ESP32 and STM32 microcontrollers.
- 91β 12π΄ [Elixir] bupe - EPUB Generator and Parser.
- 5β 1π΄ [Elixir] charm - Use ANSI terminal characters to write colors and cursor positions.
- 170β 6π΄ [Haskell] codec-beam - Generate Erlang VM byte code from Haskell.
- 157β 73π΄ [Elixir] Countries - Countries is a collection of all sorts of useful information for every country in the ISO 3166 standard.
- 31β 16π΄ [Elixir] countriex - A pure elixir country data provider containing various information for every country in ISO 3166.
- 655β 34π΄ [Elixir] cubdb - CubDB is an embedded key-value database, written in the Elixir language. It runs locally, it is schema-less, and backed by a single file.
- 22β 2π΄ [Elixir] dye - A library for dyeing your terminal output.
- 1β 1π΄ [Erlang] dynamic_compile - Compile and load Erlang modules from string input.
- 153β 15π΄ [Elixir] ecto_autoslug_field - Automatically creates slugs for your Ecto models.
- 1β 0π΄ [Elixir] egaugex - Client to fetch and parse realtime data from egauge devices.
- 109β 26π΄ [Elixir] elixir-browser - Browser detection for Elixir.
- 6β 1π΄ [Elixir] epub_cover_extractor - Extract cover from EPUB files.
- 33β 6π΄ [Erlang] erlang_term - Provide the in-memory size of Erlang terms, ignoring where these are stored.
- 201β 26π΄ [Elixir] ex2ms - Translates Elixir functions to match specifications for use with
ets. - 4β 0π΄ [Elixir] ex_azure_speech - An Elixir SDK implementation for the Microsoft Azure Speech Service.
- 281β 72π΄ [Elixir] ex_phone_number - Format, normalize, and validate phone numbers.
- 460β 50π΄ [Elixir] ex_rated - Simple and flexible rate-limiting for API's or anything.
- 1β 4π΄ [Elixir] exfcm - Simple wrapper for posting Firebase Cloud Messages.
- 4β 1π΄ [Elixir] exisbn - ISBN validation and formatting library.
- 59β 16π΄ [Elixir] exldap - A module for working with LDAP from Elixir.
- 11β 1π΄ [Elixir] exlibris - A collection of random library functions.
- 29β 2π΄ [Elixir] expool - A small process pooling library for parallel tasks in Elixir.
- 33β 12π΄ [Elixir] exprint - A printf / sprintf library for Elixir, works as a wrapper for :io.format.
- 33β 4π΄ [Elixir] expyplot - Elixir interface for Plotting/Graphing library using matplotlib.pyplot.
- 82β 14π΄ [Elixir] exquisite - LINQ-like match_spec generation for Elixir.
- 170β 31π΄ [Elixir] exsync - Yet another Elixir reloader.
- 32β 4π΄ [Elixir] funnel - Streaming Elixir API built upon ElasticSearch's percolation.
- 23β 1π΄ [Elixir] gen_task - Generic Task behavior that helps to encapsulate worker errors and recover from them in classic GenStage's.
- 7β 3π΄ [Elixir] gimei_ex - Elixir port of gimei library.
- 10β 0π΄ [Elixir] growl - Simple wrapper for growl, the notification system for OSX.
- 919β 48π΄ [Elixir] hammer - A rate-limiter with pluggable storage backends, including Redis.
- 87β 22π΄ [Elixir] html_entities - Elixir module for decoding HTML entities in a string.
- 64β 17π΄ [Elixir] huex - Elixir client for Philips Hue connected light bulbs.
- 37β 3π΄ [Elixir] indicado - Technical indicator library for Elixir with no dependencies.
- 0β 1π΄ [Elixir] japan_municipality_key - Elixir Library for Japan municipality key converting.
- 37β 2π΄ [Elixir] Jisho-Elixir - An API wrapper for Jisho.org, an online Japanese dictionary. Allows users to search by word, symbol, and or tags (refer to docs).
- 1β 1π΄ [Erlang] keys1value - Erlang set associative map for key lists.
- 75β 31π΄ [Elixir] licensir - A mix task that lists the license(s) of all installed packages in your project.
- 15β 0π΄ [Elixir] mixgraph - An interactive dependency plotter for your Hex Package.
- 12β 0π΄ [Elixir] mixstar - MixStar starred GitHub repository that depends on your project.
- 4β 2π΄ [Elixir] netrc - Reads netrc files implemented in Elixir.
- notifier - A pluggable architecture for desktop notifications.
- 4β 0π΄ [Elixir] onetime - An onetime key-value store for Elixir.
- 77β 6π΄ [Elixir] pact - Better dependency injection in Elixir for cleaner code and testing.
- 15β 11π΄ [Elixir] passbook - Elixir library to create Apple Wallet (.pkpass) files.
- 109β 40π΄ [Elixir] phone - A parser to get useful info from telephone numbers.
- 958β 45π΄ [Elixir] porcelain - Porcelain implements a saner approach to launching and communicating with external OS processes from Elixir.
- 12β 1π΄ [CSS] presentex - Elixir to HTML/JavaScript based presentation framework.
- 4β 0π΄ [Elixir] quarantine - Quarantine is a tiny OTP application for feature toggles.
- 14β 1π΄ [Elixir] ratekeeper - Rate limiter and rate-limited actions scheduler.
- 20β 4π΄ [Erlang] ratx - Rate limiter and overload protection for erlang application.
- 43β 10π΄ [Elixir] reprise - Simplified module reloader for Elixir.
- 4β 1π΄ [Elixir] spawndir - Spawns processes from the file system.
- 153β 41π΄ [Elixir] spotify_ex - An Elixir wrapper for the Spotify Web API.
- 29β 27π΄ [Elixir] std_json_io - Application for managing and communicating with IO servers via JSON.
- 5β 0π΄ [Elixir] url_unroller - Simple URL unroller (un-shortener) in Elixir.
- 24β 1π΄ [Elixir] vessel - Elixir MapReduce interfaces with Hadoop Streaming integration.
- 5β 1π΄ [Elixir] weighted_random - Weighted random picking.
Native Implemented Functions
Tools and libraries working with Erlang NIF.
- 25β 2π΄ [Haskell] hsnif - Tool that allows to write Erlang NIF libraries in Haskell.
- 28β 2π΄ [Elixir] nifty - Helper script for setting up the boilerplate required when writing a NIF.
- 4861β 247π΄ [Rust] Rustler - Library for writing NIFs for Erlang or Elixir safely in Rust. No segfaults.
Natural Language Processing (NLP)
Tools and libraries that work with human (natural) languages.
- 65β 3π΄ [Elixir] gibran - Gibran is an Elixir port of WordsCounted, a natural language processor that extracts useful statistics from text.
- 144β 13π΄ [Elixir] Paasaa - Natural language detection for Elixir.
- 41β 2π΄ [Elixir] Petrovich - Elixir library to inflect Russian first, last, and middle names.
- 27β 4π΄ [Elixir] Tongue - Elixir port of Nakatani Shuyo's natural language detector.
- 56β 8π΄ [Elixir] Woolly - Woolly is an ambitious Text Mining and Natural Language Processing API for Elixir.
Networking
Libraries and tools for using network related stuff.
- 16β 2π΄ [Elixir] asn - Can be used to map from IP to AS to ASN.
- 30β 0π΄ [Elixir] chatter - Secure message broadcasting based on a mixture of UDP multicast and TCP.
- 33β 24π΄ [Elixir] download - Download files from the internet easily.
- 14β 3π΄ [Elixir] eio - Elixir server of engine.io.
- 33β 13π΄ [Elixir] ExPcap - PCAP parser written in Elixir.
- 9085β 456π΄ [Elixir] Firezone - Open-source VPN server and egress firewall for Linux built on WireGuard. Firezone is easy to set up (all dependencies are bundled thanks to Chef Omnibus), secure, performant, and self hostable.
- 2β 1π΄ FlyingDdns - A dyndns server written in elixir.
- 26β 3π΄ [Elixir] hades - A wrapper for NMAP written in Elixir.
- 7β 4π΄ [Elixir] mac - Can be used to find a vendor of a MAC given in hexadecimal string (according to IEEE).
- 6β 0π΄ [Elixir] pool - Socket acceptor pool for Elixir.
- 92β 7π΄ [Elixir] reagent - reagent is a socket acceptor pool for Elixir.
- 0β 0π΄ [Elixir] sise - A simple to use SSDP client.
- 1β 0π΄ [Erlang] sockerl - Sockerl is an advanced Erlang/Elixir socket library for TCP protocols and provides fast, useful and easy-to-use API for implementing servers, clients and client connection pools.
- 690β 113π΄ [Elixir] socket - Socket wrapping for Elixir.
- 174β 17π΄ [Elixir] sshkit - An Elixir toolkit for performing tasks on one or more servers, built on top of ErlangΓ’ΒΒs SSH application.
- 10β 4π΄ [Elixir] torex - Simple Tor connection library.
- 28β 4π΄ [Erlang] tunnerl - SOCKS4 and SOCKS5 proxy server.
- 33β 5π΄ [Elixir] wifi - Various utility functions for working with the local Wifi network in Elixir.
- 5β 0π΄ [C] wpa_supplicant - Elixir interface to the wpa_supplicant.
Office
Libraries for working with office suite documents.
- 315β 129π΄ [Elixir] elixlsx - A writer for XLSX files.
- 22β 4π΄ [Elixir] excellent - An OpenXL (Excel 2000) Parser for Elixir.
- 219β 106π΄ [Elixir] xlsxir - Xlsx file parser with support for ISO 8601 date formats. Data is extracted to an Erlang Term Storage (ETS) table and is accessed through various functions.
ORM and Datamapping
Libraries that implement object-relational mapping or datamapping techniques.
- 708β 68π΄ [Elixir] amnesia - Mnesia wrapper for Elixir.
- 243β 26π΄ [Elixir] arbor - Ecto adjacency list and tree traversal.
- 253β 148π΄ [Elixir] arc_ecto - Arc.Ecto provides an integration with Arc and Ecto.
- 216β 18π΄ [Elixir] atlas - Object Relational Mapper for Elixir.
- 0β 1π΄ [Elixir] barrel_ex - Barrel-db distributed document-oriented database REST client in Elixir.
- 267β 52π΄ [Elixir] Bolt.Sips - Neo4j driver for Elixir using the Bolt protocol.
- 135β 12π΄ [Elixir] boltun - Transforms notifications from the Postgres LISTEN/NOTIFY mechanism into callback execution.
- 22β 4π΄ [Elixir] caylir - Cayley driver for Elixir.
- 36β 10π΄ [Elixir] comeonin_ecto_password - Ecto custom type for storing encrypted password using Comeonin.
- 96β 19π΄ [Elixir] couchdb_connector - A connector for CouchDB, the Erlang-based, JSON document database.
- 9β 1π΄ [Elixir] database_url - Parse database URL and return keyword list for use with Ecto.
- 47β 4π΄ [Elixir] datomex - Elixir driver for the Datomic REST API.
- 11β 6π΄ [Erlang] ddb_client - DalmatinerDB client.
- 103β 3π΄ [Elixir] defql - Create elixir functions with SQL as a body.
- 6β 1π΄ [Elixir] dexts - Disk Elixir Terms Storage, dest wrapper.
- 51β 7π΄ [Java] diver - A HBase driver for Erlang/Elixir using Jinterface and the Asynchbase Java client to query the database.
- 1β 1π΄ [Erlang] dproto - Protocols for DalmatinerDB.
- 10β 4π΄ [Erlang] dqe - DalmatinerDB query engine.
- 6495β 1484π΄ [Elixir] ecto - A database wrapper and language integrated query for Elixir.
- 90β 2π΄ [Elixir] ecto_anon - Simple way to handle data anonymization directly in your Ecto schemas.
- 86β 12π΄ [Elixir] ecto_cassandra - Cassandra DB Adapter for Ecto.
- 570β 126π΄ [Elixir] ecto_enum - Ecto extension to support enums in models.
- 69β 7π΄ [Elixir] ecto_facade - Ecto facade that allows to separate writes and reads to different databases.
- ecto_factory - Easily generate structs based on your ecto schemas.
- 167β 14π΄ [Elixir] ecto_fixtures - Fixtures for Elixir apps using Ecto.
- 7β 1π΄ [Elixir] ecto_lazy_float - Ecto.LazyFloat - An Ecto.Float that accepts binary and integers.
- 19β 0π΄ [Elixir] ecto_list - Simple ordered model management with Ecto.
- 35β 11π΄ [Elixir] ecto_migrate - Ecto auto migration library. It allows to generate and run migrations for initial and update migrations.
- 246β 38π΄ [Elixir] ecto_mnesia - Ecto adapter for Mnesia Erlang term database.
- 40β 17π΄ [Elixir] ecto_ordered - Ecto extension for ordered models.
- 14β 6π΄ [Elixir] ecto_paging - Cursor-based pagination for Ecto.
- 395β 36π΄ [Elixir] ecto_psql_extras - Ecto PostgreSQL database performance insights.
- 112β 3π΄ [Elixir] ecto_rut - Simple and Powerful Ecto Shortcuts to simplify and speed up development.
- 28β 2π΄ [Elixir] ecto_shortcuts - Shortcuts for common operations in ecto.
- 31β 3π΄ [Elixir] ecto_shortuuid - Ecto type which adds support for ShortUUIDs.
- 11β 1π΄ [Elixir] ecto_validation_case - Simplify your Ecto model validation tests. Loosely inspired by shoulda matchers, but simpler.
- 249β 19π΄ [Elixir] ecto_watch - Allows you to easily get notifications about database changes directly from PostgreSQL.
- 42β 1π΄ [Elixir] ectophile - Ecto extension to instantly support file uploads in models.
- 64β 19π΄ [Elixir] elastic - A thin-veneer over HTTPotion to help you talk to Elastic Search.
- 254β 69π΄ [Elixir] elastix - A simple Elastic REST client written in Elixir.
- 46β 24π΄ [Erlang] eredis - Erlang Redis client.
- 162β 79π΄ [Erlang] erlastic_search - An Erlang app for communicating with Elastic Search's rest interface.
- 146β 83π΄ [C] esqlite - Erlang NIF for sqlite.
- 104β 7π΄ [Elixir] eternal - Keep your ETS tables alive forever, safely and easily.
- 8β 1π΄ [Elixir] ets_map - An Elixir package that provides a Map-like interface (Map/Access/Enumerable/Collectable) backed by an ETS table.
- 1162β 158π΄ [Elixir] eventstore - A CQRS EventStore using Postgres for persistence, written in Elixir.
- 12β 1π΄ [Erlang] ex_bitcask - Elixir wrapper of Basho's Bitcask Key/Value store.
- 6β 0π΄ [Elixir] ex_sider - Elixir Map/List/Set interfaces for Redis data structures (uses Redix, but that is configurable).
- 43β 6π΄ [Elixir] exleveldb - Elixir wrapper around Basho's eleveldb module for LevelDB.
- 65β 8π΄ [Elixir] exnumerator - Elixir enumerable type definition in a simple way to be used with any database.
- 357β 62π΄ [Elixir] exredis - Redis client for Elixir.
- 17β 4π΄ [Elixir] exseed - An Elixir library that provides a simple DSL for seeding databases through Ecto.
- 22β 13π΄ [Elixir] exsolr - A Solr wrapper written in Elixir.
- 133β 30π΄ [Elixir] extreme - An Elixir library using Eventstore for persistence of events generated by aggregates (CQRS).
- 7β 3π΄ [Elixir] exts - Elixir Terms Storage, ets wrapper.
- 121β 12π΄ [Elixir] github_ecto - Ecto adapter for GitHub API.
- 169β 13π΄ [Elixir] inquisitor - Composable query builder for Ecto.
- 10β 4π΄ [Elixir] isn - Ecto types for the postgreSQL isn extension.
- 146β 21π΄ [Elixir] kalecto - Glue between Kalends and Ecto for saving dates, times and datetimes.
- 176β 46π΄ [Elixir] kvs - Erlang Abstract Term Database.
- 5β 0π΄ [Elixir] level - Level for Elixir implements various helper functions and data types for working with Googles Level data store.
- 3β 1π΄ [Elixir] libsqlex - Libsql driver for Elixir.
- 263β 82π΄ [Elixir] mariaex - MariaDB/MySQL driver for Elixir.
- 797β 29π΄ [Elixir] memento - Simple Mnesia Interface in Elixir.
- 607β 42π΄ [Elixir] moebius - A functional query tool for Elixir and PostgreSQL.
- 100β 29π΄ [Elixir] mongo - MongoDB driver for Elixir.
- 564β 151π΄ [Elixir] mongodb - MongoDB driver for Elixir.
- 270β 85π΄ [Elixir] mongodb_driver - Alternative driver for MongoDB with support for recent versions of MongoDB and comprehensive feature list.
- 378β 127π΄ [Elixir] mongodb_ecto - MongoDB adapter for Ecto.
- 376β 141π΄ [Erlang] mysql - MySQL/OTP Γ’ΒΒ MySQL driver for Erlang/OTP.
- 8β 5π΄ [Elixir] mysqlex - An Ecto-compatible wrapper around the mysql-otp library.
- 82β 22π΄ [Elixir] neo4j_sips - Neo4j driver for Elixir.
- 6β 5π΄ [Elixir] neo4j_sips_models - Minimalistic Model support for the Neo4j.Sips Elixir driver.
- 44β 5π΄ [Elixir] panoramix - Apache Druid client for Elixir.
- 600β 96π΄ [Elixir] paper_trail - Ecto plugin for tracking and recording all the changes in your database.
- 105β 31π΄ [Elixir] pillar - Clickhouse HTTP based client.
- 1216β 311π΄ [Elixir] postgrex - PostgreSQL driver for Elixir.
- 17β 4π΄ [Elixir] ravix - RavenDB Driver for Elixir.
- 5β 2π΄ [Elixir] ravix-ecto - RavenDB Ravix Driver adapter for Ecto.
- 13β 2π΄ [Elixir] rediscl - A minimal redis client with connection pooling and pipe query builder.
- 1140β 126π΄ [Elixir] redix - Superfast, pipelined, resilient Redis driver for Elixir.
- 19β 0π΄ [Erlang] redo - Heroku's pipelining redis client for erlang.
- 491β 63π΄ [Elixir] rethinkdb - Rethinkdb client in pure Elixir using JSON protocol.
- 197β 55π΄ [Elixir] riak - A Riak client written in Elixir.
- 30β 4π΄ [Elixir] riak_ecto - Riak adapter for Ecto.
- 298β 36π΄ [Erlang] shards - Transparent and out-of-box Sharding support for Erlang/Elixir ETS tables.
- 117β 14π΄ [Elixir] sql_dust - Generate (complex) SQL queries using magical Elixir SQL dust.
- 77β 27π΄ [Elixir] sqlite_ecto - SQLite3 adapter for Ecto.
- 5β 3π΄ [Elixir] ssdb_elixir - ssdb client for Elixir, with focus on performance.
- 119β 86π΄ [Elixir] tds - MSSQL / TDS Database driver for Elixir.
- 56β 34π΄ [Elixir] tds_ecto - MSSQL / TDS Adapter for Ecto.
- 162β 68π΄ [Elixir] timex_ecto - An adapter for using Timex DateTimes with Ecto.
- 426β 89π΄ [Elixir] tirexs - An Elixir flavored DSL for building JSON based requests to Elasticsearch engine.
- 504β 59π΄ [Elixir] triplex - Database multitenancy with postgres schemas for Elixir applications.
- 82β 23π΄ [Elixir] triton - Pure Elixir Cassandra ORM built on top of Xandra.
- 4β 2π΄ [Elixir] udpflux - An opinionated InfluxDB UDP only client.
- 369β 22π΄ [Elixir] walex - PostgreSQL Change Data Capture (CDC) events listener in Elixir.
- 430β 62π΄ [Elixir] xandra - Cassandra driver built natively in Elixir and focused on speed, simplicity, and robustness.
- 8β 0π΄ [Elixir] yar - Yet another Redis client for Elixir.
OTP
Libraries for working with OTP related things.
- 44β 5π΄ [Elixir] core - Library for selective receive OTP processes.
- 605β 153π΄ [C++] erlexec - Execute and control OS processes from Erlang/OTP.
- 175β 7π΄ [Elixir] immortal - Immortal is a small collection of helper modules intended to make it easier to build a fault-tolerant OTP application.
- 1β 0π΄ [Elixir] libex_config - Helpers for accessing OTP application configuration.
Package Management
Libraries and tools for package and dependency management.
- Hex - A package manager for the Erlang ecosystem.
- 101β 49π΄ [Erlang] rebar3_hex - Hex.pm plugin for rebar3.
Libraries and software for working with PDF files.
- 485β 43π΄ [Elixir] chromic_pdf - A client for Chrome's DevTools API to generate PDFs (HTML to PDF).
- 245β 38π΄ [Elixir] gutenex - Native PDF generation for Elixir.
- 92β 18π΄ [Elixir] pdf2htmlex - Convert PDF docs to beautiful HTML files without losing text or format.
- 342β 71π΄ [Elixir] pdf_generator - A simple wrapper for wkhtmltopdf or puppeteer (HTML to PDF) for use in Elixir projects.
- 98β 18π΄ [Elixir] puppeteer_pdf - Another wrapper around puppeteer (HTML to PDF) for use in Elixir projects.
Protocols
Special protocol and format libraries.
- 10β 1π΄ [Elixir] borsh - Elixir implementation of the BORSH binary serializer.
- 15β 5π΄ [Elixir] elixir_radius - RADIUS Protocol on Elixir.
- 41β 13π΄ [Elixir] ex_hl7 - Health Level 7 (HL7) is a protocol designed to model and transfer health-related data electronically.
- 39β 17π΄ [Elixir] ex_marshal - Ruby Marshal format implemented in Elixir.
- 482β 68π΄ [Elixir] exprotobuf - Protocol Buffers in Elixir, made easy.
- 1522β 264π΄ [Elixir] grpc-elixir - The Elixir implementation of gRPC.
- 71β 14π΄ [Elixir] message_pack - MessagePack Implementation for Elixir.
- 300β 37π΄ [Elixir] msgpax - MessagePack (de)serializer implementation for Elixir.
- 296β 22π΄ [Elixir] protox - Elixir implementation for Protocol Buffers.
- 307β 31π΄ [Elixir] riffed - Provides idiomatic Elixir bindings for Apache Thrift.
- 84β 26π΄ [Elixir] Sippet - An Elixir library designed to be used as SIP protocol middleware.
- 9β 3π΄ [Elixir] SMPPEX - SMPP 3.4 protocol and framework implementation in Elixir.
Queue
Libraries for working with event and task queues.
- 16β 2π΄ [Elixir] adap - Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules.
- 689β 128π΄ [Elixir] amqp - Simple Elixir wrapper for the Erlang RabbitMQ client, based on Langohr.
- 2683β 179π΄ [Elixir] broadway - Concurrent and multi-stage data ingestion and data processing with Elixir.
- 128β 18π΄ [Elixir] conduit - A framework for working with message queues, with adapters for SQS and AMQP, and plugs for reusable messaging patterns.
- 26β 1π΄ [Elixir] cspex - Simple, OTP compliant, Elixir implementation of CSP channels.
- 5β 0π΄ [Elixir] dbus - A dumb message bus for sharing data between microservices decoupled using Redis.
- 276β 36π΄ [Elixir] ecto_job - A transactional job queue built with Ecto, PostgreSQL and GenStage.
- 92β 26π΄ [Elixir] elixir_nsq - NSQ client library for Elixir.
- 19β 7π΄ [Elixir] elixir_talk - An Elixir client for beanstalkd.
- 117β 21π΄ [Erlang] enm - enm is an Erlang port driver that wraps the nanomsg C library.
- 17β 1π΄ [Elixir] exdisque - Elixir client for Disque, an in-memory, distributed job queue.
- 1531β 181π΄ [Elixir] exq - Job processing library for Elixir - compatible with Resque/Sidekiq.
- 49β 18π΄ [Elixir] exrabbit - RabbitMQ bindings and DSL for Elixir.
- 39β 14π΄ [Elixir] faktory_worker - An Elixir library for working with Faktory, a polyglot job processing system made by the author of Sidekiq.
- 81β 10π΄ [Elixir] flume - A blazing fast job processing system backed by GenStage & Redis.
- 181β 44π΄ [Elixir] gen_rmq - Set of behaviours meant to be used to create RabbitMQ consumers and publishers.
- 8β 2π΄ [Elixir] heapq - A Heap-based Priority Queue Implementation in Elixir.
- 20β 0π΄ [Elixir] honeycomb - Another scheduling system, focusing on the collection of results for one-time tasks.
- 725β 59π΄ [Elixir] honeydew - Honeydew is a worker pool library for Elixir.
- 165β 62π΄ [Elixir] kaffe - Kafka client library for Elixir.
- 27β 7π΄ [Erlang] mqs - RabbitMQ client library, routing keys, RPC over MQ and other stuff.
- 3968β 369π΄ [Elixir] oban - Robust asynchronous job processor powered by Elixir and modern PostgreSQL.
- 269β 9π΄ [Elixir] opq - A simple, in-memory queue with worker pooling and rate limiting in Elixir.
- 173β 17π΄ [Erlang] pqueue - Erlang Priority Queue Implementation.
- 687β 38π΄ [Elixir] que - Simple Background Job Processing with Mnesia.
- 11β 1π΄ [Elixir] queuex - Priority Queue with multiple backends.
- 21β 10π΄ [Elixir] RBMQ - Simple API for spawning RabbitMQ Producers and Consumers.
- 455β 47π΄ [Elixir] Rihanna - High performance postgres-backed job queue for Elixir.
- stream_weaver - Library for working with streams.
- 199β 29π΄ [Elixir] task_bunny - background processing application written in Elixir and uses RabbitMQ as a messaging backend.
- 729β 59π΄ [Elixir] verk - Verk is a job processing system backed by Redis. It uses the same job definition of Sidekiq/Resque.
- 40β 4π΄ [Elixir] work_queue - Simple implementation of the hungry-consumer model in Elixir.
QUIC
Libraries and tools for QUIC transport layer network protocol.
- 277β 47π΄ [Erlang] quicer - QUIC protocol erlang library.
Release Management
Libraries and tools for release management.
- 49β 3π΄ [Elixir] changex - Automated changelog generation from GIT logs.
- 2953β 398π΄ [Elixir] distillery - A pure Elixir implementation of release packaging functionality for the Erlang VM.
- 56β 11π΄ [Elixir] eliver - Interactive semantic versioning for Elixir packages.
- 25β 2π΄ [Elixir] expublish - Automates semantic release versioning and best practices for elixir packages.
- 60β 11π΄ [Elixir] relex - Erlang/Elixir Release Assembler.
- 33β 4π΄ [Elixir] renew - Mix task to create mix projects that builds into Docker containers.
- 31β 4π΄ [Elixir] versioce - An extensible version bumping and changelog generation for your mix project.
REST and API
Libraries and web tools for developing REST-ful APIs.
- 45β 13π΄ [Elixir] accent - Plug for handling the conversion of JSON API keys to different cases.
- 65β 39π΄ [Erlang] detergent - An emulsifying Erlang SOAP library.
- 65β 21π΄ [Elixir] detergentex - Elixir binding to Detergent erlang library used to call WSDL/SOAP Services.
- 1316β 85π΄ [Elixir] maru - Elixir copy of grape for creating REST-like APIs.
- 16β 2π΄ [Elixir] mazurka - Hypermedia API toolkit.
- 56β 5π΄ [Elixir] plug_rest - REST behaviour and Plug router for hypermedia web applications.
- 27β 7π΄ [Elixir] signaturex - Simple key/secret based authentication for APIs.
- 140β 80π΄ [Elixir] SOAP client - Hex-documented SOAP client based on HTTPoison.
- 94β 5π΄ [Elixir] urna - Urna is a simple DSL around cauldron to implement REST services.
- 42β 3π΄ [Elixir] versionary - API versioning for Elixir Plug and Phoenix.
Search
Libraries related to search indexing, search algorithms and search clients.
- 64β 19π΄ [Elixir] algoliax - An Algolia library for Elixir, usable with Ecto schemas.
- 193β 9π΄ [Elixir] elasticlunr - A small, full-text search library for use in the Elixir environment.
- 421β 73π΄ [Elixir] elasticsearch - A simple, no-nonsense Elasticsearch library for Elixir.
- 14β 1π΄ [Elixir] elasticsearch_elixir_bulk_processor - An efficient and flexible way to insert into Elasticsearch.
- 19β 5π΄ [Elixir] giza_sphinxsearch - Client for Sphinx Search compatible with Manticore.
Security
Libraries and tools regarding security.
- 21β 7π΄ [TeX] ca - Certificate Authority.
- 14β 2π΄ [Elixir] clamxir - ClamAV wrapper for elixir.
- 5β 0π΄ [Elixir] code_signing - Signing and verifying BEAM files with Ed25519 signatures.
- 4636β 557π΄ [Rust] Ockam - A suite of tools, programming libraries and infrastructure that make it easy to build devices that communicate securely, privately and trustfully with cloud services and other devices. Docs .
- 24β 2π΄ [Elixir] pwned - Check if your password has been pwned.
- 21β 2π΄ [Elixir] safetybox - Security oriented helper functions for Elixir.
- 494β 36π΄ [Elixir] site_encrypt - Integrated certification via Let's encrypt for Elixir-powered sites.
- 1791β 126π΄ [Elixir] sobelow - Security-focused static analysis for the Phoenix Framework.
- 110β 39π΄ [Erlang] ssl_verify_fun - Collection of ssl verification functions for Erlang.
SMS
SMS related libraries and tools.
- exsms - An Elixir library for sending transactional SMS - supports Sendinblue, mailjet, msg91 and textlocal.
Static Page Generation
Tools and libraries for generating static websites and content.
- 41β 7π΄ [Elixir] blogit - An OTP application for generating blogs from git repositories containing markdown files.
- 69β 6π΄ [Elixir] coil - Minimalistic static content engine.
- 80β 4π΄ [Elixir] glayu - A static site generator for mid-sized sites.
- 587β 38π΄ [Elixir] NimblePublisher - Minimal filesystem-based publisher with markdown and syntax highlighting.
- 120β 6π΄ [Elixir] pardall_markdown - Reactive publishing framework, filesystem-based with support for Markdown, nested hierarchies, and instant content rebuilding.
- 88β 7π΄ [Elixir] phoenix_pages - Add blogs, documentation, and other static pages to Phoenix apps.
- 323β 30π΄ [Elixir] serum - A simple static website generator written in Elixir.
Statistics
Libraries around the topic statistics.
- 9β 1π΄ [Elixir] descriptive_statistics - Descriptive Statistics for Elixir.
- 20β 5π΄ [Erlang] mtx - MTX supports front-end API for tracking Histogram, Meter, Counter, Gauge, Timing keys.
- 194β 17π΄ [Elixir] numerix - A collection of useful mathematical functions with a slant towards statistics, linear algebra and machine learning.
- 13β 0π΄ [Elixir] simple_stat_ex - Ecto compatible library for simple stat keeping by time period.
- 141β 30π΄ [Elixir] statistics - Some basic statistical functions for Elixir.
Templating
Libraries parsing and helping with templates
- 187β 50π΄ [Erlang] bbmustache - Binary pattern match Based Mustache template engine for Erlang/OTP.
- 197β 39π΄ [Elixir] calliope - An Elixir HAML parser.
- 114β 12π΄ [Elixir] eml - Library for writing and manipulating (HTML) markup in Elixir.
- 36β 6π΄ [Elixir] exgen - A templating library for quickly generating Elixir projects.
- 83β 3π΄ [Elixir] expug - Pug templates for Elixir.
- 69β 14π΄ [Elixir] mustache - Mustache templates for Elixir.
- 18β 5π΄ [Elixir] mustachex - Mustache for Elixir - Logic-less templates.
- 371β 55π΄ [Elixir] slime - An Elixir library for rendering slim-like templates.
- 62β 8π΄ [Elixir] sneeze - Render elixir data structures to HTML. Inspired by hiccup.
- 35β 4π΄ [Elixir] taggart - HTML as code in Elixir.
- 6β 6π΄ [Elixir] templates - Helper library for adding templating to web applications.
- 514β 18π΄ [Elixir] temple - An HTML DSL for Elixir and Phoenix.
Testing
Libraries for testing codebases and generating test data.
- 194β 28π΄ [Elixir] amrita - A polite, well mannered and thoroughly upstanding testing framework for Elixir.
- 17β 0π΄ [Elixir] apocryphal - Swagger based document driven development for ExUnit.
- 195β 11π΄ [Elixir] blacksmith - Data generation framework for Elixir.
- 83β 9π΄ [Elixir] blitzy - A simple HTTP load tester in Elixir.
- 1001β 117π΄ [Elixir] bypass - Bypass provides a quick way to create a mock HTTP server with a custom plug.
- 140β 20π΄ [Elixir] chaperon - An HTTP service performance & load testing framework written in Elixir.
- 7β 0π΄ [Elixir] chemistry - Testing Framework for Elixir.
- 11β 5π΄ [Elixir] cobertura_cover - Writes a coverage.xml from
mix test --coverfile compatible with Jenkins' Cobertura plugin. - 56β 3π΄ [Elixir] definject - Unobtrusive dependency injector for Elixir.
- 49β 6π΄ [Elixir] double - Create stub dependencies for testing without overwriting global modules.
- 3β 1π΄ [Elixir] ecto_it - Ecto plugin with default configuration for repos for testing different ecto plugins with databases.
- 18β 1π΄ [Erlang] efrisby - A REST API testing framework for erlang.
- 100β 8π΄ [Elixir] efx - A library to declaratively write asynchronously testable effects.
- 0β 0π΄ [Shell] elixir-auto-test - Run test when file is saved using inotify-tools.
- 813β 66π΄ [Elixir] espec - BDD test framework for Elixir inspired by RSpec.
- 138β 31π΄ [Elixir] espec_phoenix - ESpec for Phoenix web framework.
- 5β 0π΄ [Elixir] ex_integration_coveralls - A library for Elixir run-time system code line-level coverage analysis. You can use it to evaluate the integration tests code coverage. Introduction article.
- 2057β 141π΄ [Elixir] ex_machina - Flexible test factories for Elixir. Works out of the box with Ecto and Ecto associations.
- 99β 5π΄ [Elixir] ex_spec - BDD-like syntax for ExUnit.
- 14β 5π΄ [Elixir] ex_unit_fixtures - A library for defining modular dependencies for ExUnit tests.
- 134β 17π΄ [Elixir] ex_unit_notifier - Desktop notifications for ExUnit.
- 313β 26π΄ [Elixir] excheck - Property-based testing library for Elixir (QuickCheck style).
- 30β 0π΄ [Elixir] exkorpion - A BDD library for Elixir developers.
- 43β 5π΄ [Elixir] factory_girl_elixir - Minimal implementation of Ruby's factory_girl in Elixir.
- 72β 26π΄ [Elixir] fake_server - FakeServer is an HTTP server that simulates response and makes testing external APIs easier.
- 1196β 261π΄ [Elixir] faker - Faker is a pure Elixir library for generating fake data.
- 149β 6π΄ [Elixir] faker_elixir - FakerElixir is an Elixir package that generates fake data for you.
- 1β 1π΄ [Erlang] fqc - FiFo Quickcheck helper, a set of helpers for running EQC.
- 2β 1π΄ [Elixir] gimei - Gimei is a pure Elixir library for generating Japanese fake data.
- 1369β 139π΄ [Elixir] hound - Elixir library for writing integration tests and browser automation.
- 24β 2π΄ [Elixir] hypermock - HTTP request stubbing and expectation Elixir library.
- 14β 0π΄ [Elixir] ignorant - Partial
Mapcomparison that ensures fields are present while ignoring their values. - 124β 17π΄ [Erlang] katt - KATT (Klarna API Testing Tool) is an HTTP-based API testing tool for Erlang.
- 4β 1π΄ [Elixir] kovacs - A simple ExUnit test runner.
- 3β 0π΄ [Elixir] markdown_test - A library that lets you test the Elixir code in your markdown files.
- 839β 230π΄ [Erlang] meck - A mocking library for Erlang.
- 54β 7π΄ [Elixir] mecks_unit - A package to elegantly mock module functions within (asynchronous) ExUnit tests using meck.
- 21β 10π΄ [Elixir] mix_erlang_tasks - Common tasks for Erlang projects that use Mix.
- 17β 8π΄ [Elixir] mix_eunit - A Mix task to execute eunit tests.
- 130β 17π΄ [Elixir] mix_test_interactive - Interactive test runner for mix test with watch mode.
- 956β 82π΄ [Elixir] mix_test_watch - Automatically run your Elixir project's tests each time you save a file.
- 2β 0π΄ [Elixir] mixunit - An EUnit task for Mix based projects.
- 140β 9π΄ [Elixir] mneme - Assertions that know how to update themselves, otherwise known as snapshot or approval testing.
- 691β 82π΄ [Elixir] mock - Mocking library for the Elixir language.
- 94β 10π΄ [Elixir] mockery - Simple mocking library for asynchronous testing.
- 3β 0π΄ [Elixir] mockingbird - A set of helpers to test code that involves http requests.
- 1402β 79π΄ [Elixir] mox - Mocks and explicit contracts for Elixir.
- 214β 14π΄ [Elixir] patch - Ergonomic Mocking for Elixir.
- 128β 7π΄ [Elixir] pavlov - BDD framework for your Elixir projects.
- 10β 1π΄ [Elixir] plug_test_helpers - A simple testing DSL for Plugs.
- 164β 8π΄ [Erlang] ponos - Ponos is an Erlang application that exposes a flexible load generator API.
- 215β 6π΄ [Elixir] power_assert - Power Assert in Elixir. Shows evaluation results each expression.
- 392β 44π΄ [Elixir] propcheck - Property based testing for Elixir.
- 918β 167π΄ [Erlang] proper - PropEr (PROPerty-based testing tool for ERlang) is a QuickCheck-inspired open-source property-based testing tool for Erlang.
- 2β 0π΄ [Elixir] setup_tag - Easily mix and match functions marked with tags to setup your test context.
- 134β 15π΄ [Elixir] shouldi - Elixir testing libraries with nested contexts, superior readability, and ease of use.
- 946β 75π΄ [Elixir] stream_data - A pure-Elixir data generation and property-based testing library.
- 13β 2π΄ [Elixir] test_selector - A set of test helpers that make sure you always select the right elements in your Phoenix app.
- 10β 2π΄ [Elixir] test_that_json - JSON assertions and helpers for your Elixir testing needs.
- 56β 5π΄ [Elixir] toxiproxy_ex - API client for the resilience testing tool Toxiproxy.
- 58β 8π΄ [Elixir] tuco_tuco - TucoTuco helps you test your web application by running a web browser and simulating user interaction with your application.
- 54β 5π΄ [Elixir] Walkman - Isolate tests from the real world, inspired by Ruby's VCR.
- 1804β 211π΄ [Elixir] wallaby - Wallaby helps test your web applications by simulating user interactions concurrently and manages browsers.
- 230β 36π΄ [Elixir] white_bread - Story based BDD in Elixir using the gherkin syntax.
Text and Numbers
Libraries for parsing and manipulating text and numbers.
- 98β 19π΄ [Elixir] abacus - Evaluate math terms in Elixir.
- 15β 4π΄ [Elixir] base58 - Base58 encoding/decoding for Elixir.
- 17β 5π΄ [Elixir] base58check - Base58Check encoding/decoding for Bitcoin.
- 20β 7π΄ [Elixir] base62 - Base62 encoder/decoder in pure Elixir.
- 18β 3π΄ [Elixir] bencode - A Bencode encoder and decoder for Elixir. The decoder will return the checksum value of the info dictionary, if an info dictionary was found in the input.
- 4β 2π΄ [Elixir] bencoder - bencode in Elixir.
- 80β 22π΄ [Elixir] bitcoinex - Bitcoin utilities in Elixir.
- 79β 20π΄ [Elixir] brcpfcnpj - Number format and Validation for Brazilian documents (CPF/CNPJ).
- 5β 0π΄ [Elixir] caustic - Elixir cryptocurrency library for Bitcoin, Ethereum, and other blockchains. Includes cryptography, number theory (prime, congruence), and general mathematics library for exploratory math.
- 4β 0π΄ [Elixir] ccc - Character Code Converter.
- 91β 11π΄ [Elixir] chinese_translation - Translate between traditional chinese and simplified chinese based on wikipedia data, and translate chinese words/characters to pinyin (or slug with or without tone).
- 46β 18π΄ [Elixir] cidr - Classless Inter-Domain Routing (CIDR) for Elixir.
- 1β 1π΄ [Elixir] cirru_parser - Cirru Parser in Elixir.
- 2β 0π΄ [Elixir] colorful - Elixir macros to decorate characters on CUI.
- 7β 1π΄ [Elixir] colors - Colors util written in Elixir.
- 17β 2π΄ [Elixir] convertat - An Elixir library for converting from and to arbitrary bases.
- 31β 4π΄ [Elixir] curtail - HTML tag-safe string truncation.
- 22β 5π΄ [Elixir] custom_base - Allow you to make custom base conversion in Elixir.
- 478β 112π΄ [Elixir] decimal - Arbitrary precision decimal arithmetic for Elixir.
- 38β 6π΄ [Elixir] eden - EDN encoder/decoder for Elixir.
- 10β 8π΄ [Elixir] elixilorem - Lorem Ipsum generator for Elixir.
- 8β 0π΄ [Elixir] elixir-range-extras - Elixir range utilities: constant-time random sampling and set operations.
- 8β 2π΄ [Elixir] elixir_bencode - Bencode implemented in Elixir.
- 31β 11π΄ [Erlang] erldn - EDN format parser for the Erlang platform.
- 4β 1π΄ [Elixir] event_source_encoder - Encode data into EventSource compliant data.
- 5β 6π΄ [Elixir] ex_brace_expansion - Brace expansion, as known from sh/bash, in Elixir.
- ex_cldr - Cldr is an Elixir library for the Unicode Consortium's Common Locale Data Repository (CLDR). - :fire: :x: Broken link
- 11β 5π΄ [Elixir] ex_pression - Evaluate user input expressions.
- 1β 0π΄ [Elixir] ex_rfc3966 - Elixir Tel URI parser compatible with RFC3966.
- 10β 3π΄ [Elixir] ex_rfc3986 - RFC3986 URI/URL parser.
- 22β 3π΄ [Elixir] ex_uc - Extensible Units Converter for Elixir.
- 105β 28π΄ [Elixir] exmoji - Emoji encoding Swiss Army knife for Elixir/Erlang.
- 48β 10π΄ [Elixir] expletive - Profanity filter library for Elixir.
- 12β 6π΄ [Elixir] expr - An Elixir library for parsing and evaluating mathematical expressions.
- 28β 10π΄ [Elixir] haikunator - Generate Heroku-like memorable random names to use in your apps or anywhere else.
- 282β 16π΄ [Elixir] hashids - Hashids lets you obfuscate numerical identifiers via reversible mapping.
- 30β 20π΄ [Elixir] hexate - Simple module for Hex encoding / decoding in Elixir.
- 51β 8π΄ [Elixir] inet_cidr - Classless Inter-Domain Routing (CIDR) for Elixir that is compatible with :inet and supports both IPv4 and IPv6.
- 384β 81π΄ [Elixir] inflex - An Inflector library for Elixir.
- 11β 1π΄ [CSS] kitsune - An Elixir library for transforming the representation of data.
- 10β 1π΄ [Elixir] ltsvex - LTSV parser implementation in Elixir.
- 27β 8π΄ [Elixir] mbcs - Wrapper for erlang-mbcs. This module provides functions for character encoding conversion.
- 3β 2π΄ [Erlang] mimetype_parser - parse mimetypes.
- 19β 4π΄ [Gleam] minigen - Random data generators for the Erlang ecosystem.
- 46β 17π΄ [Elixir] monetized - A lightweight solution for handling and storing money.
- 846β 146π΄ [Elixir] money - Working with Money safer, easier, and fun, interpretation of the Fowler's Money pattern.
- 9β 9π΄ [Elixir] mt940 - MT940 (standard structured SWIFT Customer Statement message) parser for Elixir.
- 14β 0π΄ [Elixir] namor - A name generator that creates random, url-friendly slugs.
- 236β 11π΄ [Elixir] nanoid - Elixir port of NanoID, a secure and URL-friendly unique ID generator.
- 11β 3π΄ [Elixir] near_api - A NEAR API in Elixir - a library for DApps development on the NEAR blockchain platform.
- 69β 10π΄ [Elixir] neotomex - A PEG implementation with a pleasant Elixir DSL.
- 234β 48π΄ [Elixir] number - Number is a pretentiously-named Elixir library which provides functions to convert numbers into a variety of different formats.
- 8β 0π΄ [Elixir] numero - A micro library for converting non-english utf-8 digits in elixir.
- 2β 0π΄ [Elixir] palette - A handy library for colouring strings in Elixir.
- 25β 8π΄ [Elixir] pinyin - Chinese Pinyin lib for Elixir.
- 6β 4π΄ [Elixir] porterstemmer - Porter Stemmer in Elixir.
- 7β 1π΄ [Elixir] pretty_hex - A binary hex dumping library in Elixir.
- 42β 11π΄ [Erlang] quickrand - Quick Random Number Generation.
- 1β 0π΄ [Elixir] RandomStringGenerator - A module to generate a random string based on a given string pattern.
- 13β 2π΄ [Elixir] ref_inspector - Referer parser library in Elixir. Fetching info from URLs.
- 8β 6π΄ [Elixir] remove_emoji - Emoji text sanitizer in Elixir. It can remove any emoji symbol.
- 97β 20π΄ [Elixir] secure_random - Convenience library for random base64 strings modeled after my love for Ruby's SecureRandom.
- 35β 7π΄ [Elixir] sentient - Simple sentiment analysis based on the AFINN-111 wordlist.
- 53β 3π΄ [Elixir] shortuuid - Generate concise, unambiguous, URL-safe UUIDs.
- 63β 8π΄ [Elixir] simetric - String similarity metrics for Elixir.
- 160β 26π΄ [Elixir] slugger - Slugger can generate slugs from given strings that can be used in URLs or file names.
- 6β 4π΄ [Elixir] smile - Small lib for converting emoji mappers to emoji characters, like in Slack messages.
- 153β 10π΄ [Elixir] stemmer - An English (Porter2) stemming implementation in Elixir.
- 3β 0π΄ [Elixir] tau - Provide the famous mathematical constant, tau, ΓΒ = 6.2831....
- 31β 6π΄ [Elixir] tomlex - A TOML parser for Elixir.
- 0β 0π΄ [Elixir] transformer - Flexible type conversion lightweight library.
- 139β 34π΄ [Elixir] ua_inspector - User agent parser library like
piwik/device-detector. - 1β 0π΄ [Elixir] ua_parser2 - A port of ua-parser2 to Elixir. User agent parser library.
- 3β 3π΄ [Elixir] unique_names_generator - Generate seeded random and unique names.
- 21β 2π΄ [Elixir] unit_fun - Attempt to add units to numbers in elixir to give some added type safety when dealing with numeric quantities.
- 368β 83π΄ [Elixir] uuid - UUID generator and utilities for Elixir.
- 221β 66π΄ [Erlang] uuid_erl - Erlang Native UUID Generation.
- 83β 10π΄ [Elixir] veritaserum - Sentiment analysis based on afinn-165, emojis and some enhancements.
Third Party APIs
Libraries for accessing third party APIs.
- 27β 14π΄ [Elixir] airbrake - An Elixir notifier for the Airbrake.
- 29β 46π΄ [Elixir] airbrakex - Elixir client for the Airbrake service.
- 38β 23π΄ [Elixir] amazon_product_advertising_client - Amazon Product Advertising API client for Elixir.
- 69β 21π΄ [Elixir] apns - Apple Push Notifications Service client library for elixir.
- 2β 3π΄ [Elixir] asanaficator - Simple Elixir wrapper for the Asana API. Based on Tentacat.
- 7β 0π΄ [Elixir] askimet_ex - Elixir client for Askimet Anti-Spam service.
- 0β 1π΄ [Elixir] assembla_api - Assembla API client for Elixir.
- 12β 5π΄ [Elixir] balalaika_bear - Simple VK API client for Elixir.
- 4β 0π΄ [Elixir] balanced - Balanced API Client for Elixir.
- 5β 5π΄ [Elixir] bandwidth - An Elixir client library for the Bandwidth Application Platform.
- 9β 1π΄ [Elixir] bing_translator - A simple Elixir interface to Bing's translation API.
- 9β 4π΄ [Elixir] bitmex - BitMEX client library for Elixir.
- 31β 9π΄ [Elixir] bitpay - Elixir core library for connecting to bitpay.com.
- 51β 9π΄ [Elixir] cashier - Payment gateway offering a common interface into multiple payment providers.
- 20β 4π΄ [Elixir] chargebeex - An Elixir client for Chargebee API.
- 3β 2π΄ [Elixir] cleverbot - Simple implementation of the Cleverbot API in Elixir.
- 13β 5π΄ [Elixir] coinbase - A unofficial Coinbase API v1 Client.
- 183β 22π΄ [Elixir] commerce_billing - A payment-processing library for Elixir that supports multiple gateways (e.g. Bogus & Stripe).
- 15β 11π΄ [Elixir] conekta - Elixir wrapper for Conekta API.
- 37β 4π΄ [Elixir] correios_cep - Find Brazilian addresses by zip code, directly from Correios database. No HTML parsers.
- 5β 3π΄ [Elixir] currently - A tool to display cards currently assigns on Trello.
- 12β 4π΄ [Elixir] darkskyx - A Darksky.com (formerly forecast.io) API client for Elixir.
- 15β 3π΄ [Elixir] digitalocean - Elixir wrapper for the Digital Ocean API v2.
- 12β 5π΄ [Elixir] digoc - Digital Ocean API v2 Elixir Client.
- 94β 22π΄ [Elixir] diplomat - A Google Cloud Datastore client.
- 57β 16π΄ [Elixir] dnsimple - Elixir client for the DNSimple API v2.
- 27β 15π΄ [Elixir] docker - Elixir client for the Docker Remote API.
- 19β 9π΄ [Elixir] dockerex - Lightweight Docker Remote API Client with SSL/TLS login/connection support.
- 40β 7π΄ [Elixir] dogstatsd - An Elixir client for DogStatsd.
- 1β 0π΄ [Elixir] dpd_client - An API client for the DPD service.
- 13β 6π΄ [Elixir] dropbox - Dropbox Core API client for Elixir.
- 2β 2π΄ [HTML] dublin_bus_api - Access to the Real Time Passenger Information (RTPI) for Dublin Bus services.
- 2β 0π΄ [Elixir] edgarex - Elixir interface for fetching SEC filings from EDGAR.
- 11β 10π΄ [Elixir] elixir_authorizenet - Unofficial client for the Authorize.Net merchant API.
- 47β 9π΄ [Elixir] elixir_ipfs_api - IPFS (InterPlanetary File System) API client for Elixir.
- 9β 3π΄ [Elixir] elixirfm - Last.fm API wrapper for Elixir.
- 86β 17π΄ [Elixir] elixtagram - Instagram API client for Elixir.
- 393β 79π΄ [Elixir] ethereumex - Elixir JSON-RPC client for the Ethereum blockchain.
- 9β 4π΄ [Erlang] everex - Evernote API client for Elixir.
- 1β 0π΄ [Elixir] everyoneapi - API Client for EveryoneAPI.com.
- 4β 0π΄ [Elixir] ex_changerate - Elixir client for exchangerate.host API.
- 0β 0π΄ [Elixir] ex_codeship - API Client for Codeship.
- 346β 154π΄ [Elixir] ex_twilio - Twilio API client for Elixir.
- 39β 15π΄ [Elixir] ex_twiml - Generate TwiML for your Twilio integration, right inside Elixir.
- 4β 0π΄ [Elixir] exdesk - Elixir library for the Desk.com API.
- 18β 5π΄ [Elixir] exfacebook - Facebook API, written in Elixir using similar methods like Ruby koala gem.
- 1β 0π΄ [Elixir] exgenius - Elixir library for the (undocumented) Rap Genius API.
- 25β 6π΄ [Elixir] exgravatar - An Elixir module for generating Gravatar URLs.
- 8β 11π΄ [Elixir] exgrid - interact with Sendgrid's API.
- 6β 7π΄ [Elixir] exjira - JIRA client library for Elixir.
- 16β 1π΄ [Protocol Buffer] explay - Unofficial Google Play API in Elixir.
- 411β 126π΄ [Elixir] extwitter - Twitter client library for Elixir.
- 2β 2π΄ [Elixir] exurban - Elixir wrapper for UrbanAirship API.
- 137β 63π΄ [Elixir] facebook - Facebook Graph API Wrapper written in Elixir.
- 3β 1π΄ [Elixir] feedlex - Feedly RSS reader client for Elixir.
- 8β 6π΄ [Elixir] fluent_client - Minimalistic fluentd client.
- 51β 34π΄ [Elixir] forcex - Elixir library for the Force.com REST API.
- 8β 4π΄ [Elixir] forecast_io - Simple wrapper for Forecast.IO API.
- 7β 0π΄ [Elixir] gcmex - Google Cloud Messaging client library for elixir.
- 1081β 476π΄ [Elixir] google-cloud - This repository contains all the client libraries to interact with Google APIs.
- 41β 5π΄ [Elixir] google_sheets - Elixir library for fetching and polling Google spreadsheet data in CSV format.
- 3β 0π΄ [Elixir] govtrack - A simple Elixir wrapper for the govtrack.us API.
- 503β 54π΄ [Elixir] gringotts - A complete payment library for Elixir and Phoenix Framework similar to ActiveMerchant from the Ruby world.
- 0β 0π΄ [Elixir] honeywell - A client for the Honeywell Lyric, Round and Water Leak & Freeze Detector APIs.
- 107β 44π΄ [Elixir] kane - A Google Cloud Pub/Sub client.
- 28β 13π΄ [Elixir] keenex - A Keen.io API Client.
- 8β 2π΄ [Elixir] link_shrinkex - Elixir library for creating short URLs using Google's URL Shortener API.
- m2x - Elixir client for the AT&T M2X, a cloud-based fully managed time-series data storage service for network connected machine-to-machine (M2M) devices and the Internet of Things (IoT). (Erlang Version). - :fire: :x: Broken link
- 48β 55π΄ [Elixir] mailchimp - A basic Elixir wrapper for version 3 of the MailChimp API.
- 197β 96π΄ [Elixir] mailgun - Elixir Mailgun Client.
- 49β 12π΄ [Elixir] mandrill - A Mandrill wrapper for Elixir.
- 9β 3π΄ [Elixir] marvel - CLI and Elixir API Client for the Marvel API.
- 2β 1π΄ [Elixir] mexpanel - An Elixir client for the Mixpanel HTTP API.
- 6β 2π΄ [Elixir] mixpanel - An Elixir client for the Mixpanel HTTP API.
- 4β 2π΄ [Elixir] mixpanel_data_client - Client for interacting with the Mixpanel Data Export API.
- 0β 1π΄ [Elixir] mmExchangeRate - A simple exchange rate checker and calculator based on Central Bank of Myanmar Api.
- 18β 11π΄ [Elixir] nacha - Elixir library for generating and parsing NACHA files for US ACH transfers.
- 368β 78π΄ [Elixir] nadia - Telegram Bot API Wrapper written in Elixir.
- 9β 8π΄ [Elixir] omise - Omise client library for Elixir.
- 7β 4π΄ [Elixir] opbeat - Elixir client for Opbeat.
- 7β 4π΄ [Elixir] pagexduty - A Pagerduty client for Elixir.
- 2β 0π΄ [Elixir] parsex - ParsEx is an Elixir HTTP Client for communicating with Parse.com's Restful API.
- 5β 3π΄ [Elixir] particle - An Elixir client for the Particle IoT platform's HTTP API.
- 4β 0π΄ [Elixir] pathway - An Erlang/Elixir client for the Trak.io REST API.
- 27β 9π΄ [Elixir] pay - An Elixir Lib to deal with Paypal and other payment solutions.
- 38β 25π΄ [Elixir] pay_pal - Elixir library for working with the PayPal REST API.
- 681β 164π΄ [Elixir] pigeon - HTTP2-compliant wrapper for sending iOS and Android push notifications.
- 7β 3π΄ [Elixir] pocketex - Pocketex is an Elixir client for the Pocket read later service getpocket.com.
- 27β 18π΄ [Elixir] pusher - Elixir library to access the Pusher REST API.
- 60β 24π΄ [Elixir] qiniu - Qiniu SDK for Elixir.
- random_user_api - Another simple randomuser.me API client.
- 4β 1π΄ [Elixir] reap - Reap is a simple Elixir library for working with the refheap API.
- 4β 0π΄ [Elixir] reddhl - An headline and link puller for Reddit and its various subreddits.
- 8β 2π΄ [Elixir] redtube - Redtube API Wrapper written in Elixir.
- 4β 3π΄ [HTML] reporter - Reporter is simple reporting App reviews library. Support AppStore and GooglePlay.
- 57β 7π΄ [Elixir] riemann - A Riemann client for Elixir.
- 3β 1π΄ [Elixir] rs_twitter - Low Level Twitter Client for Elixir.
- 2β 0π΄ [Elixir] semver - Utilities for working with semver.org-compliant version strings.
- 88β 45π΄ [Elixir] sendgrid - Send composable, transactional emails with SendGrid.
- 103β 55π΄ [Elixir] shopify - Easily access the Shopify API.
- 13β 0π΄ [Elixir] sift_ex - A Siftscience API Library for Elixir.
- 3β 0π΄ [Elixir] simplex - An Elixir library for interacting with the Amazon SimpleDB API.
- 682β 183π΄ [Elixir] slack - Slack real time messaging client in Elixir.
- 43β 15π΄ [Elixir] sparkpost - An Elixir library for sending email using SparkPost.
- 286β 92π΄ [Elixir] statix - Expose app metrics in the StatsD protocol.
- 1076β 379π΄ [Elixir] stripity_stripe - An Elixir Library for Stripe.
- 0β 0π΄ [Elixir] tagplay - Elixir client for Tagplay API.
- 173β 22π΄ [Elixir] telegex - Telegram bot framework and API client written in Elixir.
- 41β 4π΄ [Elixir] telephonist - Elixir state machines for Twilio calls.
- 451β 154π΄ [Elixir] tentacat - Simple Elixir wrapper for the GitHub API.
- 14β 6π΄ [Elixir] tg_client - An Elixir wrapper which communicates with the Telegram-CLI.
- 4β 0π΄ [Elixir] tradehub - An Elixir client library for the Tradehub blockchain.
- 2β 0π΄ [Elixir] traitify_elixir - An Elixir client library for the Traitify Developer's API.
- 1β 1π΄ [Elixir] ui_faces - UIFaces API client for Elixir applications.
- 15β 6π΄ [Elixir] unsplash-elixir - An Elixir library for Unsplash.
- 4β 0π΄ [Elixir] vultr - Simple wrapper for the Vultr API.
- 22β 2π΄ [Elixir] xe - Real time conversion for currencies.
- 1β 0π΄ [Elixir] zanox - Zanox API.
Translations and Internationalizations
Libraries and tools providing translations or internationalizations.
- 14β 1π΄ [Elixir] exkanji - A Elixir library for translating between hiragana, katakana, romaji and kanji. It uses Mecab.
- 9β 0π΄ [Elixir] exromaji - A Elixir library for translating between hiragana, katakana and romaji.
- free PO editor - A tool for translating PO files.
- 8β 5π΄ [Elixir] getatrex - Automatic translation tool of Gettext locales with Google Translate for Elixir/Phoenix projects.
- 492β 95π΄ [Elixir] gettext - Internationalization and localization support for Elixir.
- 185β 22π΄ [Elixir] linguist - Elixir Internationalization library.
- 3β 1π΄ [Elixir] parabaikElixirConverter - ParabaikElixirConverter is just a Elixir version of Parabaik converter. It can convert from Unicode to Zawgyi-One and Zawgyi-One to Unicode vice versa.
- 236β 16π΄ [Elixir] trans - A Elixir library to manage embedded translations into models leveraging PostgreSQL JSONB datatype.
Utilities
Utilities libraries.
- 13β 2π΄ [Elixir] ar2ecto - Ar2ecto is a set of mix tasks to help you migrate from ActiveRecord to Ecto.
- 156β 4π΄ [Elixir] async_with - A modifier for Elixir's "with" to execute all its clauses in parallel.
- 126β 33π΄ [Elixir] crutches - Utility library for Elixir, designed to complement the standard library bundled with the language.
- 12β 0π΄ [Elixir] deppie - Elixir's coolest deprecation logger.
- 8β 1π΄ [Elixir] dot-notes - Simple dot/bracket notation parsing/conversion for Maps/Lists.
- 62β 3π΄ [Elixir] dress - Cli app that makes your stdout fancy.
- 495β 30π΄ [Erlang] erlang-history - Hacks to add shell history to Erlang's shell.
- 62β 8π΄ [Erlang] erlsh - Family of functions and ports involving interacting with the system shell, paths and external programs.
- 225β 102π΄ [Erlang] erlware_commons - Additional standard library for Erlang.
- 6β 0π΄ [Elixir] ex_progress - A library for tracking progress across many tasks and sub-tasks.
- 0β 1π΄ [Elixir] exjprop - Elixir library for reading Java properties files from various sources.
- 2β 1π΄ [Elixir] fitex - FitEx is a Macro-Module which provides a bit of sugar for function definitions.
- 3β 0π΄ [Elixir] global - Wrapper of the Erlang
:globalmodule. - 9β 2π΄ [Elixir] mandrake - Mandrake is a functional programming library that bring something else magic in elixir.
- 39β 4π΄ [Elixir] mnemonix - A unified interface to key/value stores.
- 7β 0π΄ [Elixir] once_more - Simple retries with composable backoff strategies.
- 16β 0π΄ [Elixir] pachka - Message batching library for Elixir applications.
- 92β 4π΄ [Elixir] plasm - Plasm is Ecto's composable query multitool, containing higher-level functions such as .count, .random, .first, .last, .find, .inserted_before, .inserted_after, etc.
- 3β 0π΄ [Elixir] plugmap - Plugmap is sitemap generation library for Plug/Phoenix Framework.
- 68β 11π΄ [Elixir] pubsub - A Publish-Subscribe utility library that implements a pub-sub mechanism to ease the burden of communication on the business logic processes.
- 2β 0π΄ [Elixir] PubSubx - A simple publish-subscribe system built on Elixir's GenServer and Registry, allowing for dynamic topics, process monitoring, and automatic subscription management.
- 322β 15π΄ [Elixir] quark - A library for common functional programming idioms: combinators, currying, and partial application.
- 455β 35π΄ [Elixir] retry - Simple Elixir macros for linear retry, exponential backoff and wait with composable delays.
- 14β 1π΄ [Elixir] sips_downloader - Elixir module for downloading the ElixirSips episodes and all other files.
- 105β 23π΄ [Elixir] sitemap - Sitemap is the easiest way to generate Sitemaps in Elixir.
- 51β 14π΄ [Elixir] sitemapper - A fast, stream based XML Sitemap generator.
- 16β 1π΄ [Erlang] uef-lib - Useful Erlang Functions Library that provides modules for manipulating lists, binaries, maps, numbers, date and time. It contains some functions optimized for performance in specific cases (e.g. for file I/O operations or binary transformations).
- 16β 2π΄ [Elixir] vert.x - Elixir event bus bridge to Vert.x services using TCP socket.
Validations
Libraries and implementations for validation of data.
- 35β 10π΄ [Elixir] bankster - A IBAN account number and BIC validation library for Elixir.
- 16β 3π΄ [Elixir] ex_gtin - A validation library for GTIN codes under GS1 specification.
- 2β 0π΄ [Elixir] ex_nric - Validation for Singapore National Registration Identity Card numbers (NRIC).
- 215β 17π΄ [Elixir] exop - A library that allows to encapsulate business logic and validate params with predefined contract.
- 39β 16π΄ [Erlang] form - Document forms and validation library.
- 89β 11π΄ [Elixir] goal - A parameter validation library for LiveViews and JSON/HTML controllers - based on Ecto.
- 21β 2π΄ [Elixir] is - Fast, extensible and easy to use data structure validation for elixir with nested structures support.
- 14β 2π΄ [Elixir] jeaux - A light and easy schema validator.
- 50β 4π΄ [Elixir] optimal - A schema based keyword list option validator.
- 6β 2π΄ [Elixir] shape - A data validation library for Elixir based on Prismatic Scheme.
- 141β 12π΄ [Elixir] skooma - Simple data validation library for describing and validating data structures.
- 0β 0π΄ [Elixir] to_atom_in - Utility to safely convert string an atom in set.
- 10β 0π΄ [Elixir] uk_postcode - UK postcode parsing and validation library.
- 600β 60π΄ [Elixir] vex - An extensible data validation library for Elixir.
Version Control
Working with version control like git, mercury, subversion ...
- 71β 5π΄ [Elixir] gitex - Elixir implementation of the Git object storage, but with the goal to implement the same semantic with other storage and topics.
Video
Libraries for working with and manipulating video and multimedia.
- 245β 39π΄ [Elixir] ffmpex - FFmpeg command line wrapper.
- 21β 0π΄ [Elixir] silent_video - Convert GIFs and videos to silent videos, optimized for mobile playback.
WebAssembly
Libraries for running WebAssembly (WASM) in Elixir or running Elixir on WebAssembly.
- 3582β 110π΄ [Rust] lumen - An alternative BEAM implementation, designed for WebAssembly.
- 697β 45π΄ [Rust] wasmex - Execute WebAssembly / WASM binaries from Elixir.
XML
Libraries and implementations working with XML (for html tools please go to the HTML section).
- 6β 5π΄ [Elixir] elixir-map-to-xml - Converts an Elixir map to an XML document.
- 57β 23π΄ [Elixir] elixir-xml-to-map - Creates an Elixir Map data structure from an XML string.
- 269β 108π΄ [Erlang] erlsom - Erlsom is an Erlang library to parse (and generate) XML documents.
- 12β 2π΄ [Elixir] exmerl - Elixir wrapper for xmerl.
- 26β 4π΄ [Elixir] exml - Most simple Elixir wrapper for xmerl xpath.
- 7β 3π΄ [HTML] exoml - A module to decode/encode xml into a tree structure.
- 137β 44π΄ [Erlang] fast_xml - Fast Expat based Erlang XML parsing library.
- 325β 25π΄ [Elixir] meeseeks - A library for parsing and extracting data from HTML and XML with CSS or XPath selectors.
- 51β 12π΄ [Elixir] quinn - XML parser for Elixir.
- 296β 41π΄ [Elixir] saxy - Saxy is an XML parser and encoder in Elixir that focuses on speed and standard compliance.
- 377β 64π΄ [Elixir] sweet_xml - Query XML simply and effectively.
- 187β 42π΄ [Elixir] xml_builder - Elixir library for generating xml.
- 40β 17π΄ [Elixir] xmlrpc - Library for encoding and decoding XML-RPC for clients and servers.
YAML
Libraries and implementations working with YAML.
- 53β 15π΄ [Erlang] fast_yaml - Fast YAML is an Erlang wrapper for libyaml "C" library.
- 213β 59π΄ [Erlang] yamerl - YAML 1.2 parser in Erlang.
- 182β 38π΄ [Elixir] yaml_elixir - Yaml parser for Elixir based on native Erlang implementation.
- 26β 10π΄ [Elixir] ymlr - A YAML encoder for Elixir.
- 6β 1π΄ [Elixir] yomel - libyaml interface for Elixir.
Resources
Various resources, such as books, websites and articles, for improving your Elixir development skills and knowledge.
Books
Fantastic books and e-books.
- Adopting Elixir - Bring Elixir into your company, with real-life strategies from the people who built Elixir and use it successfully at scale. This book has all the information you need to take your application from concept to production (2017).
- 179β 12π΄ Async Elixir - Dive into Elixir's world of concurrency and processes with this interactive Livebook.
- Craft GraphQL APIs in Elixir with Absinthe - Upgrade your web API to GraphQL, leveraging its flexible queries to empower your users, and its declarative structure to simplify your code (2017).
- Elixir Cookbook - This book is a set of recipes grouped by topic by Paulo A Pereira (2015).
- Elixir do zero ΓΒ concorrΓΒͺncia - (Portuguese) The book provides introduction to functional and concurrent programming with Elixir by Tiago Davi (2014).
- Elixir in Action - A brief intro to the language followed by a more detailed look at building production-ready systems in Elixir by SaΓ Β‘a JuriΓΒ (2015).
- Elixir in Action, Second Edition - Revised and updated for Elixir 1.7, Elixir in Action, Second Edition teaches you how to apply Elixir to practical problems associated with scalability, fault tolerance, and high availability (2019).
- Elixir in Action, Third Edition - Fully updated to Elixir 1.14, this authoritative bestseller reveals how Elixir tackles problems of scalability, fault tolerance, and high availability (2023).
- Elixir Succinctly - A short book to learn the basic of Elixir and its ecosystem.
- Engineering Elixir Applications - (currently in Beta) As the subtitle suggests, this book explores the technologies and skills that support navigating each stage of software delivery with confidence.
- Erlang and Elixir for Imperative Programmers - Introduction to Erlang and Elixir in the context of functional concepts by Wolfgang Loder (2016).
- Erlang in Anger - This book intends to be a little guide about how to be the Erlang medic in a time of war by Fred Hebert (2014).
- Functional Web Development with Elixir, OTP, and Phoenix - Open doors to powerful new techniques that will get you thinking about web development in fundamentally new ways (2017).
- 101β 4π΄ Getting Started - Elixir - PDF, MOBI, and EPUB documents for Elixir's Getting Started tutorial (2016).
- Hands-on Elixir & OTP: Cryptocurrency trading bot - Want to learn Elixir & OTP by creating a real-world project? With Hands-on Elixir & OTP: Cryptocurrency trading bot you will gain hands-on experience by working on an interesting software project. We will explore all the key abstractions and essential principles through iterative implementation improvements. (2021).
- Introducing Elixir - A gentle introduction to the language, with lots of code examples and exercises by Simon St. Laurent and J. David Eisenberg (2013).
- Learn Functional Programming with Elixir - DonΓ’ΒΒt board the Elixir train with an imperative mindset! To get the most out of functional languages, you need to think functionally (2017).
- Metaprogramming Elixir: Write Less Code, Get More Done (and Have Fun!) - Thorough explanation on how to exploit Elixir's metaprogramming capabilities to improve your Elixir coding by Chris McCord (2015).
- Phoenix for Rails Developers - This book shows how Rails developers can benefit from their existing knowledge to learn Phoenix. By Elvio Vicosa (2017).
- Phoenix in Action - builds on your existing web dev skills, teaching you the unique benefits of Phoenix along with just enough Elixir to get the job done. By Geoffrey Lessel (2017).
- Phoenix Inside Out - The goal of this series is to enable you as a Confident Phoenix developer. There are 3 different editions to address varied needs of devs jumping into Phoenix.
- Programming Elixir 1.6 - The book provides introduction to functional and concurrent programming with Elixir by Dave Thomas (2014).
- Programming Phoenix 1.4 - Definitive guide to build web applications with the Phoenix framework by Chris McCord, JosΓΒ© Valim and Bruce Tate (2015).
- The Beam Book - A description of the Erlang Runtime System ERTS and the virtual Machine BEAM.
- The Little Elixir & OTP Guidebook - A book for learning Elixir and OTP through small to medium-sized projects by Benjamin Tan Wei Hao (2014).
- The Phoenix LiveView Cookbook - A Phoenix LiveView e-book containing tried and tested recipes for solving common problems.
- ΓΒtudes for Elixir - A collection of exercises to program in Elixir by J. David Eisenberg (2013) (Github Repo).
Cheat Sheets
Useful Elixir-related cheat sheets.
- 107β 6π΄ benjamintanweihao/elixir-cheatsheets - GenServer and Supervisor cheatsheets.
- elixir-lang/elixir - Enum cheatsheets.
Community
Getting in contact with the community via chat or mailinglist.
- #elixir-lang - The IRC Channel #elixir-lang on Freenode.
- Elixir Forum - Community run discussion forums for all things Elixir.
- elixir-lang-core - Mailinglist for Elixir Core development, use "talk" for questions and general discussions.
- elixir-lang-talk - Official Elixir Mailinglist for questions and discussions.
- ElixirSlack - Elixir Slack Community.
Editors
Editors and IDEs useable for Elixir/Erlang
- 913β 102π΄ [Emacs Lisp] Alchemist - Elixir Tooling Integration Into Emacs.
- 192β 12π΄ [Elixir] Alchemist-Server - Editor/IDE independent background server to inform about Elixir mix projects.
- 645β 38π΄ [Elixir] Alchemist.vim - Elixir Tooling Integration Into Vim.
- Atom - Elixir language support for Atom.
- 404β 26π΄ [Elixir] atom-elixir - An Atom package for Elixir.
- 14β 3π΄ [CoffeeScript] atom-iex - Run an IEx session in Atom.
- 845β 49π΄ [Elixir] elixir-ls - A frontend-independent IDE "smartness" server for Elixir. Implements the JSON-based "Language Server Protocol" standard and provides debugger support via VS Code's debugger protocol.
- 262β 64π΄ [Python] elixir-tmbundle - A TextMate and SublimeText bundle for Elixir.
- 9β 3π΄ [Vim Script] elixir_generator - Vim plugin to generate Elixir module and test files with one command.
- 367β 24π΄ [Python] ElixirSublime - Elixir plugin for SublimeText 3 that provides code completion and linting.
- 1897β 163π΄ [Kotlin] Jetbrains - Elixir for IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, Android Studio, 0xDBE.
- 28β 1π΄ [Lua] mix.nvim - Mix wrapper plugin for Neovim.
- 7β 2π΄ Notepad++ - Elixir syntax highlighting for Notepad++.
- 9β 5π΄ Nova Elixir - Syntax highlighting and code completion for Elixir files (.ex, .exs, .eex) in Nova.
- 27β 2π΄ [Elixir] nvim - Neovim host for writing plugins in Elixir.
- 5β 1π΄ [CoffeeScript] phoenix-snippets - Phoenix Snippets for Atom.
- 1325β 154π΄ [Ruby] vim-elixir - Vim configuration files for Elixir.
- 4β 0π΄ [VimL] vim-ex_test - Vim test runner based on Thoughtbots vim-rspec.
- 220β 12π΄ [Vim script] vim-mix-format - Async
mix formatfor Vim and Neovim. - 4β 0π΄ [Elixir] vscode-elixir - Elixir Support for Visual Studio Code.
- 386β 41π΄ [TypeScript] vscode-elixir-ls - Elixir language support and debugger for VS Code, powered by ElixirLS.
Newsletters
Useful Elixir-related newsletters.
- Elixir Digest - A weekly newsletter with the latest articles on Elixir and Phoenix.
- Elixir Merge - A daily newsletter which delivers two curated updates (articles, tutorials, videos, podcasts) in each edition in quick-read format.
- Elixir Radar - The "official" Elixir newsletter, published weekly via email by Plataformatec.
- ElixirWeekly - The Elixir community newsletter, covering stuff you easily miss, shared on ElixirStatus and the web.
Other Awesome Lists
Other amazingly awesome lists can be found at jnv/lists or bayandin/awesome-awesomeness.
- 741β 40π΄ Awesome Elixir and CQRS - A curated list of awesome Elixir and Command Query Responsibility Segregation (CQRS) and event sourcing resources.
- Awesome Elixir by LibHunt - A curated list of awesome Elixir and Erlang packages and resources.
- 1708β 207π΄ Awesome Erlang - A curated list of awesome Erlang libraries, resources and shiny things.
- Curated Elixir Resources - A collection of top recommended Elixir resources.
- 1155β 203π΄ Erlang Bookmarks - A collection of links for Erlang developers.
Podcasts
Podcasts discussing the Elixir language and community.
- Elixir Fountain - The Elixir Fountain podcast.
- Elixir Mix - The Elixir Mix podcast.
- Elixir Outlaws - The Elixir Outlaws podcast.
- Elixir Talk - The Elixir Talk podcast.
- Thinking Elixir - The Thinking Elixir podcast.
Reading
Elixir-related reading materials.
- Discover Elixir & Phoenix - An online course that teaches both the Elixir language and the Phoenix framework.
- Elixir Cheat-Sheet - A Elixir cheat sheet, by Andy Hunt & Dave Thomas.
- 1516β 57π΄ [Elixir] Elixir Code Smells - A catalog of Elixir-specific code smells that can harm the quality of software developed using this language.
- 361β 21π΄ [Elixir] Elixir Functional Programming - Material to introduce functional programming using the Elixir language.
- 193β 4π΄ [Elixir] Elixir Refactorings - A catalog of refactoring strategies to promote the redesign and improve the quality of code developed with Elixir.
- Elixir School - Lessons about the Elixir programming language.
- 105β 8π΄ [JavaScript] Elixir Tab - Chrome Extension which helps you learn the Elixir core lib.
- Elixir vs Ruby | How Switching To Elixir Made Our Team Better - Long-form post that explains in detail when and why you should choose Elixir over Ruby.
- Learn With Me: Elixir - A series where I learn Elixir and you can learn along with me.
- 345β 8π΄ [Elixir] The Little Schemer in Elixir - Exercises and algorithms from the Little Schemer book, ported to Elixir.
- 664β 416π΄ [Elixir] xElixir - Exercism Exercises in Elixir.
Screencasts
Cool video tutorials.
- Alchemist Camp - Alchemist.Camp has many hours of free, project-based Elixir-learning screencasts.
- Confreaks (Elixir) - Elixir related conference talks.
- Curso de Elixir de 0 a 100 - Complete course of elixir (in spanish) for free.
- Elixir for Programmers - Functional, Parallel, Reliable (and fun!), taught by Dave Thomas.
- Elixir Foundation - Learn Elixir by building a practical example. Learn how GenServer, Agents and many other elixir primitives work.
- Elixir Sips - Tiny screencasts for learning Elixir.
- ElixirCasts.io - Simple screencasts to help you learn Elixir and Phoenix.
- ExCasts - Elixir and Phoenix screencasts for all skill levels.
- Kamil Skowron - YouTube channel dedicated to promote functional programming, publishing "real world" programming videos in Elixir like "Hands-on Elixir & OTP: Cryptocurrency trading bot" series.
- LearnElixir.tv - Beginner friendly, in-depth, step by step screencasts.
- LearnPhoenix.tv - Learn how to build fast, dependable web apps with Phoenix.
- Meet Elixir - Walk through some features and concepts of Elixir by JosΓΒ© Valim.
Styleguides
Styleguides for ensuring consistency while coding.
- 4427β 300π΄ [Elixir] christopheradams/elixir_style_guide - A community-driven style guide for Elixir.
- 528β 36π΄ lexmag/elixir-style-guide - An opinionated Elixir style guide.
- 396β 21π΄ [Elixir] rrrene/elixir-style-guide - Style guide checked by Credo.
Websites
Useful Elixir-related websites.
- 3066β 426π΄ [Elixir] 30 Days of Elixir - A walk through the Elixir language in 30 exercises.
- BEAM Community - From distributed systems, to robust servers and language design on the Erlang VM.
- Benjamin Tan - Learnings & Writings - A blog consisting of mostly Elixir posts.
- Elixir Career - A job board for Elixir, and community of Elixir developers.
- Elixir Examples - A collection of small Elixir programming language examples.
- Elixir Flashcards - Flashcards are a powerful way to improve your knowledge. Elixircards are hand crafted, professionally printed flashcards for levelling up your Elixir.
- 26632β 3668π΄ [Elixir] Elixir Github Repository - The project repository.
- 26632β 3668π΄ [Elixir] Elixir Github Wiki - The project's wiki, containing much useful information.
- Elixir Online Courses list - Classpert - A list of Elixir Online Courses (some are free) from Classpert Online Course Search.
- Elixir Quiz - Weekly programming problems to help you learn Elixir.
- Elixir Recipes - Collection of patterns & solutions to common problems in Elixir.
- ElixirLibs - A curated list of Elixir libraries.
- Hashrocket Today I Learned - Elixir - Small posts about Elixir from the team at Hashrocket.
- How I start - Elixir - Explanation and intro to Elixir by JosΓΒ© Valim.
- Learning Elixir - A blog about a Professional Software Engineer learning Elixir.
Contributing
Please see CONTRIBUTING for details.