Contents
Actors
Libraries and tools for working with actors and such.
- bpe β174 π 38 β Business Process Engine in Erlang. (Doc).
- dflow β11 π 1213 β Pipelined flow processing engine.
- exactor β664 π 352 β Helpers for easier implementation of actors in Elixir.
- exos β66 π 90 β A Port Wrapper which forwards cast and call to a linked Port.
- flowex β375 π 201 β Railway Flow-Based Programming with Elixir GenStage.
- mon_handler β1 π 1229 β A minimal GenServer that monitors a given GenEvent handler.
- pool_ring β2 π 2038 β Create a pool based on a hash ring.
- poolboy β1351 π 838 β A hunky Erlang worker pool factory.
- pooler β274 π 853 β An OTP Process Pool Application.
- sbroker β149 π 1368 β Sojourn-time based active queue management library.
- workex β71 π 1703 β Backpressure and flow control in EVM processes.
Algorithms and Data structures
Libraries and implementations of algorithms and data structures.
- array β29 π 2308 β An Elixir wrapper library for Erlangβs array.
- aruspex β30 π 1656 β Aruspex is a configurable constraint solver, written purely in Elixir.
- bimap β9 π 100 β Pure Elixir implementation of bidirectional maps and multimaps.
- bitmap β28 π 1114 β Pure Elixir implementation of bitmaps.
- blocking_queue β50 π 1569 β BlockingQueue is a simple queue implemented as a GenServer. It has a fixed maximum length established when it is created.
- bloomex β93 π 223 β A pure Elixir implementation of Scalable Bloom Filters.
- clope β16 π 191 β Elixir implementation of CLOPE: A Fast and Effective Clustering Algorithm for Transactional Data.
- combination β20 π 1061 β Elixir library to generate combinations and permutations from Enumerable collection.
- count_buffer β2 π 1871 β Buffer a large set of counters and flush periodically.
- cuckoo β35 π 223 β A pure Elixir implementation of Cuckoo Filters.
- cuid β37 π 2089 β Collision-resistant ids optimized for horizontal scaling and sequential lookup performance, written in Elixir.
- dataframe β57 π 1471 β Package providing functionality similar to Pythonβs Pandas or Rβs data.frame().
- datastructures β203 π 1396 β A collection of protocols, implementations and wrappers to work with data structures.
- def_memo β29 π 1411 β A memoization macro (defmemo) for elixir using a genserver backing store.
- dlist β5 π 2145 β Deque implementations in Elixir.
- eastar β17 π 507 β A* graph pathfinding in pure Elixir.
- ecto_materialized_path β45 π 1181 β Tree structure, hierarchy and ancestry for the ecto models.
- ecto_state_machine β91 π 1448 β Finite state machine pattern implemented on Elixir and adopted for Ecto.
- elistrix β12 π 2085 β A latency / fault tolerance library to help isolate your applications from an uncertain world of slow or failed services.
- emel β71 π 751 β A simple and functional machine learning library written in elixir.
- erlang-algorithms β133 π 1003 β Implementations of popular data structures and algorithms.
- exconstructor β224 π 1450 β An Elixir library for generating struct constructors that handle external data with ease.
- exfsm β6 π 953 β Simple elixir library to define a static FSM.
- exkad β1 π 1474 β A kademlia implementation in Elixir.
- exmatrix β56 π 1160 β ExMatrix is a small library for working with matrices, originally developed for testing matrix multiplication in parallel.
- exor_filter β17 π 39 β Nif for xor_filters. βFaster and Smaller Than Bloom and Cuckoo Filtersβ.
- ezcryptex β0 π 2005 β Thin layer on top of Cryptex.
- flow β1077 π 43 β Computational parallel flows on top of GenStage.
- fnv β4 π 1297 β Pure Elixir implementation of FowlerβNollβVo hash functions.
- fsm β345 π 352 β Finite state machine as a functional data structure.
- fuse β414 π 1460 β This application implements a so-called circuit-breaker for Erlang.
- gen_fsm β37 π 1706 β A generic finite state-machine - Elixir wrapper around OTPβs gen_fsm.
- graphmath β65 π 542 β An Elixir library for performing 2D and 3D mathematics.
- hash_ring_ex β21 π 1533 β A consistent hash-ring implementation for Elixir.
- hypex β17 π 901 β Fast Elixir implementation of HyperLogLog.
- indifferent β18 π 323 β Indifferent access for Elixir maps/list/tuples with custom key conversion.
- isaac β3 π 1029 β Isaac is an elixir module for ISAAC: a fast cryptographic random number generator.
- jumper β4 π 901 β Jump consistent hash implementation in Elixir (without NIFs).
- key2value β6 π 38 β Erlang 2-way Set Associative Map.
- lfsr β6 π 1515 β Elixir implementation of a binary Galois Linear Feedback Shift Register.
- loom β208 π 1385 β A CRDT library with Ξ΄-CRDT support.
- luhn β12 π 16 β Luhn algorithm in Elixir.
- lz4 β58 π 455 β LZ4 bindings for Erlang for fast data compressing.
- machinery β359 π 208 β A state machine library for structs in general, it integrates with Phoenix out of the box.
- mason β6 π 945 β Coerce maps into structs. This is helpful e.g. when you interface a REST API and want to create a struct from the response.
- matrex β421 π 195 β A blazing fast matrix library for Elixir/Erlang with C implementation using CBLAS.
- merkle_tree β83 π 357 β A Merkle hash tree implementation in Elixir.
-
minmaxlist
β4
π
1061
β
Elixir library extending
Enum.min_by/2
,Enum.max_by/2
andEnum.min_max_by/2
to return a list of results instead of just one. - mmath β4 π 891 β A library for performing math on number βarraysβ in binaries.
- monadex β281 π 1067 β Upgrade your Elixir pipelines with monads.
- murmur β28 π 223 β A pure Elixir implementation of the non-cryptographic hash Murmur3.
- nary_tree β10 π 240 β An Elixir implementation of generic n-ary tree data structure.
- natural_sort β10 π 2076 β Elixir natural sort implementation for lists of strings.
- navigation_tree β3 π 1962 β A navigation tree representation with helpers to generate HTML out of it.
- parallel_stream β80 π 437 β A parallel stream implementation for Elixir.
- paratize β26 π 1061 β Elixir library providing some handy parallel processing (execution) facilities that support configuring number of workers and timeout.
- parex β63 π 2030 β Parallel Execute (Parex) is an Elixir module for executing multiple (slow) processes in parallel.
-
qex
β15
π
99
β
Wraps
:queue
, with improved API andInspect
,Collectable
andEnumerable
protocol implementations. - ratio β26 π 114 β Adds Rational Numbers and allows them to be used in common arithmatic operations. Also supports conversion between Floats and Rational Numbers.
- red_black_tree β33 π 1359 β Red-Black tree implementation in Elixir.
- remodel β133 π 1308 β An Elixir presenter package used to transform map structures.
- rendezvous β6 π 1112 β Implementation of the Rendezvous or Highest Random Weight (HRW) hashing algorithm in Elixir.
- rock β9 π 191 β Elixir implementation of ROCK: A Robust Clustering Algorithm for Categorical Attributes.
- simhash β18 π 321 β Simhash implementation using Siphash and N-grams.
- sleeplocks β33 π 720 β BEAM friendly spinlocks for Elixir/Erlang.
- sorted_set β19 π 2022 β Sorted Sets for Elixir.
- spacesaving β2 π 1746 β stream count distinct element estimation using the βspace savingβ algorithm.
- structurez β11 π 1961 β A playground for data structures in Elixir.
- supermemo β13 π 351 β An Elixir implementation of the Supermemo 2 algorithm.
- tfidf β16 π 1971 β An Elixir implementation of term frequencyβinverse document frequency.
- the_fuzz β68 π 743 β Fuzzy string-matching algorithm implementations.
- trie β121 π 56 β Erlang Trie Implementation.
- witchcraft β854 π 501 β Common algebraic structures and functions for Elixir.
- zipper_tree β16 π 2171 β Variadic arity tree with a zipper for Elixir.
Applications
Standalone applications.
- CaptainFact β139 π 1 β A collaborative, real-time video fact-checking platform. (Docs).
- chat β16 π 104 β A tiny text chat sample based on N2O.
- Consolex β115 π 1686 β Consolex is a tool that allows you to attach a web based console to any mix project.
- dragonfly_server β40 π 1994 β Elixir app to serve Dragonfly images.
- exchat β252 π 1432 β A Slack-like app by Elixir, Phoenix & React (redux).
- Exon β22 π 1201 β A βmess managerβ developed in Elixir and provides a simple API to manage & document your stuff. (Docs).
- ExShop β212 π 1570 β Digital goods shop & blog created using Phoenix framework.
- Hydra β60 π 1802 β A multi-headed beast: API gateway, request cache, and data transformations.
- Igthorn β60 π 471 β Cryptocurrecy trading platform / trading bot with admin panel.
- medex β6 π 1868 β Medical Examination - application for register health check callbacks and represent their state via HTTP.
- medusa_server β5 π 1350 β A simple cowboy web server written in Elixir to stack images. (Docs).
- Nvjorn β14 π 1159 β A multi-protocol network services monitor written in Elixir using Poolboy.
- Phoenix Battleship β497 π 1587 β The Good Old game built with Elixir, Phoenix Framework, React and Redux.
- Phoenix Toggl β176 π 1765 β Toggl tribute done in Elixir, Phoenix Framework, React and Redux.
- Phoenix Trello β2470 π 1580 β Trello tribute done in Elixir, Phoenix Framework, React and Redux.
- poxa β879 π 108 β Open Pusher implementation, compatible with Pusher libraries.
- Queerlink β34 π 1107 β A simple yet efficient URL shortening service written in Elixir.
- RemoteRetro β467 π 18 β A real-time application for conducting Agile retrospectives at remoteretro.org written in Elixir/Phoenix/React.
- Sprint Poker β173 π 1268 β Online estimation tool for Agile teams, written using Elixir Lang, Phoenix Framework and React.
- Startup Job β90 π 1340 β An umbrella project to search startup jobs scraped from websites written in Elixir/Phoenix and React/Redux.
- Tai β238 π 3 β A composable, real time, cryptocurrency market data and trade execution toolkit.
- tty2048 β151 π 1680 β Terminal-based 2048 game written in Elixir.
- uai_shot β44 π 533 β A multiplayer ship game built with Elixir, Phoenix Framework and Phaser.
- workbench β56 π 3 β From Idea to Execution - Manage your trading operation across a globally distributed cluster.
Artificial Intelligence
When your code becomes smarter than you.
- Exnn β92 π 1475 β Evolutive Neural Networks framework Γ la G.Sher written in Elixir. (Docs).
- simple_bayes β372 π 1271 β A Simple Bayes / Naive Bayes implementation in Elixir.
Audio and Sounds
Libraries working with sounds and tones.
- erlaudio β22 π 2004 β Erlang PortAudio bindings.
- firmata β41 π 126 β This package implements the Firmata protocol.
- synthex β43 π 1640 β A signal synthesis library.
Authentication
Libraries for implementing authentication schemes.
- aeacus β36 π 1900 β A simple configurable identity/password authentication module (Compatible with Ecto/Phoenix).
- apache_passwd_md5 β5 π 2308 β Apache/APR Style Password Hashing.
- aws_auth β64 π 785 β AWS Signature Version 4 Signing Library for Elixir.
- basic_auth β160 π 237 β Elixir Plug to easily add HTTP basic authentication to an app.
- coherence β1196 π 339 β Coherence is a full featured, configurable authentication system for Phoenix. (Docs).
- doorman β113 π 736 β Tools to make Elixir authentication simple and flexible.
- elixir_auth_google β43 π 188 β The simplest way to add Google OAuth authentication (βSign in with Googleβ) to your Elixir/Phoenix app.
- github_oauth β4 π 2114 β A simple github oauth library.
- goth β170 π 7 β OAuth 2.0 library for server to server applications via Google Cloud APIs.
- guardian β2976 π 39 β An authentication framework for use with Elixir applications. (Docs).
- htpasswd β4 π 2120 β Apache htpasswd file reader/writer in Elixir.
- mojoauth β3 π 2249 β MojoAuth implementation in Elixir.
- oauth2 β610 π 508 β An OAuth 2.0 client library for Elixir.
- oauth2_facebook β4 π 1255 β A Facebook OAuth2 Provider for Elixir.
- oauth2_github β2 π 1224 β A GitHub OAuth2 Provider for Elixir.
- oauth2cli β3 π 2172 β Simple OAuth2 client written for Elixir.
- oauth2ex β56 π 1176 β Another OAuth 2.0 client library for Elixir.
- oauther β55 π 1088 β An OAuth 1.0 implementation for Elixir.
- passwordless_auth β41 π 156 β Simple passwordless login or 2-factor / multi-factor authentication for Elixir.
- phauxth β416 π 198 β Authentication library for Phoenix 1.3 and other Plug-based apps.
- phoenix_client_ssl β16 π 211 β Client SSL Authentication Plugs for Phoenix and other Plug-based apps.
- phx_gen_auth β626 π 1 β An authentication system generator for Phoenix 1.5 applications.
- pow β1142 π 57 β Robust, modular, and extendable user authentication system (Website - Doc).
- samly β82 π 641 β SAML SP SSO made easy (Doc).
- sesamex β11 π 1254 β Another simple and flexible authentication solution in 5 minutes!.
- sigaws β8 π 1171 β AWS Signature V4 signing and verification library (Doc).
- ueberauth β1229 π 30 β An Elixir Authentication System for Plug-based Web Applications.
- ueberauth_cas β12 π 18 β Central Authentication Service strategy for Γberauth.
- ueberauth_facebook β66 π 213 β Facebook OAuth2 Strategy for Γberauth.
- ueberauth_foursquare β1 π 1404 β Foursquare OAuth2 Strategy for Γberauth.
- ueberauth_github β79 π 232 β A GitHub strategy for Γberauth.
- ueberauth_google β108 π 93 β A Google strategy for Γberauth.
- ueberauth_identity β69 π 140 β A simple username/password strategy for Γberauth.
- ueberauth_line β2 π 400 β LINE Strategy for Γberauth.
- ueberauth_microsoft β14 π 99 β A Microsoft strategy for Γberauth.
- ueberauth_slack β22 π 255 β A Slack strategy for Γberauth.
- ueberauth_twitter β31 π 433 β Twitter Strategy for Γberauth.
- ueberauth_vk β16 π 112 β vk.com Strategy for Γberauth.
- ueberauth_weibo β12 π 1715 β Weibo OAuth2 Strategy for Γberauth.
- zachaeus β11 π 374 β An easy to use licensing system, based on asymmetric cryptography.
Authorization
Libraries for implementing Authorization handling.
- authorize β88 π 452 β Rule based authorization, for advanced authorization rules.
- bodyguard β472 π 536 β A flexible authorization library for Phoenix applications.
- canada β370 π 625 β A simple authorization library that provides a friendly interface using declarative permission rules.
- canary β449 π 405 β An authorization library for Elixir applications that restricts what resources the current user is allowed to access. (Docs).
- speakeasy β54 π 254 β Middleware based authentication and authorization for Absinthe GraphQL powered by Bodyguard.
- terminator β43 π 706 β 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
- connection β231 π 64 β Connection behaviour for connection processes. The API is superset of the GenServer API.
- gen_state_machine β247 π 87 β Elixir wrapper for gen_statem.
- stockastic β17 π 1837 β 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.
- benchee β941 π 184 β Easy and extensible benchmarking in Elixir!
- benchfella β462 π 1268 β Benchmarking tool for Elixir.
- bmark β67 π 1373 β A benchmarking tool for Elixir.
Bittorrent
Sharing is caring with Elixir
- bento β63 π 577 β An incredibly fast, correct, pure-Elixir Bencoding library.
- tracker_request β12 π 2214 β Dealing with bittorrent tracker requests and responses.
- wire β14 π 1845 β Encode and decode bittorrent peer wire protocol messages with Elixir.
BSON
Libraries and implementations working with BSON.
- BSONMap β7 π 1519 β Elixir package that applies a function to each document in a BSON file and has a low memory consumption.
- cyanide β5 π 191 β An Elixir BSON encoding/decoding library.
Build Tools
Project build and automation tools.
- active β65 π 379 β Recompilation and Reloading on FileSystem changes.
- coffee_rotor β15 π 2312 β Rotor plugin to compile CoffeeScript files.
- dismake β3 π 2216 β Mix compiler running make.
- etude β10 π 1547 β Parallel computation coordination compiler for Erlang/Elixir.
- ExMake β15 π 2247 β A modern, scriptable, dependency-based build tool loosely based on Make principles.
- Exscript β6 π 1515 β Elixir escript library.
- mad β173 π 90 β Small and Fast Rebar Replacement.
- pc β48 π 104 β A rebar3 port compiler.
- reaxt β348 π 2 β React template into your Elixir application for server rendering.
- rebar3_abnfc_plugin β1 π 1199 β Rebar3 abnfc compiler.
- rebar3_asn1_compiler β0 π 1899 β Plugin for compiling ASN.1 modules with Rebar3.
- rebar3_auto β43 π 159 β Rebar3 plugin to auto compile and reload on file change.
- rebar3_diameter_compiler β3 π 324 β Compile diameter .dia files in rebar3 projects.
- rebar3_eqc β14 π 324 β A rebar3 plugin to enable the execution of Erlang QuickCheck properties.
- rebar3_exunit β2 π 1947 β A plugin to run Elixir ExUnit tests from rebar3 build tool.
- rebar3_idl_compiler β0 π 1456 β This is a plugin for compiling Erlang IDL files using Rebar3.
- rebar3_live β3 π 1998 β Rebar3 live plugin.
- rebar3_neotoma_plugin β1 π 2046 β Rebar3 neotoma (Parser Expression Grammar) compiler.
- rebar3_protobuffs β11 π 1874 β rebar3 protobuffs provider using protobuffs from Basho.
- rebar3_run β22 π 119 β Run a release with one simple command.
- rebar3_yang_plugin β0 π 1199 β Rebar3 yang compiler.
- reltool_util β23 π 56 β Erlang reltool utility functionality application.
- relx β624 π 43 β A release assembler for Erlang.
- remix β135 π 1554 β Automatic recompilation of Mix code on file change.
- rotor β82 π 2279 β Super-simple build system for Elixir.
- sass_elixir β0 π 2306 β A sass plugin for Elixir projects.
Caching
Libraries for caching data.
- cachex β926 π 161 β A powerful caching library for Elixir with a wide featureset.
- con_cache β746 π 521 β ConCache is an ETS based key/value storage.
- elixir_locker β15 π 1883 β Locker is an Elixir wrapper for the locker Erlang library that provides some useful libraries that should make using locker a bit easier.
- gen_spoxy β20 π 739 β Caching made fun.
- jc β23 π 513 β In-memory, distributable cache with pub/sub, JSON-query and consistency support.
- locker β153 π 1865 β Atomic distributed βcheck and setβ for short-lived keys.
- lru_cache β30 π 318 β Simple LRU Cache, implemented with ets.
- memoize β96 π 105 β A memoization macro that easily cache function.
- nebulex β623 π 11 β A fast, flexible and extensible distributed and local caching library for Elixir.
- stash β48 π 1246 β A straightforward, fast, and user-friendly key/value store.
Chatting
Chatting via IRC, Slack, HipChat and other systems using Elixir.
- alice β87 π 135 β A Slack bot framework for Elixir.
- chatty β33 π 1594 β A basic IRC client that is most useful for writing a bot.
- cog β904 π 925 β Cog is an open chatops platform that gives you a secure, collaborative command line right in your chat window.
- ExGram β96 π 13 β a library to build Telegram Bots, you can use the low-level methods and models or use the really opinionated framework included. (Docs).
- ExIrc β133 π 161 β IRC client adapter for Elixir projects.
- ExMustang β66 π 105 β A simple, clueless slackbot and collection of responders.
- Guri β20 π 1836 β Automate tasks using chat messages.
- hedwig β604 π 1091 β XMPP Client/Bot Framework for Elixir.(Docs).
- hipchat_elixir β5 π 625 β HipChat client library for Elixir, based on httpc.
- kaguya β71 π 350 β A small, powerful, and modular IRC bot.
- slacker β81 π 1669 β A bot library for the Slack chat service.
- yocingo β38 π 1397 β Create your own Telegram Bot.
Cloud Infrastructure and Management
Applications, tools and libraries for your own cloud service.
- aws β186 π 30 β AWS clients for Elixir.
- Bonny β183 π 223 β Kubernetes Operator Development Framework.
- discovery β242 π 1913 β An OTP application for auto-discovering services with Consul.
- erlcloud β623 π 17 β Cloud Computing library for Erlang (Amazon EC2, S3, SQS, SimpleDB, Mechanical Turk, ELB). (Docs).
- ex_aws β974 π 3 β AWS client, supporting Dynamo, Kinesis, Lambda, SQS, and S3.
- ex_riak_cs β4 π 872 β Riak CS API client.
- fleet_api β7 π 1967 β A simple wrapper for the Fleet (CoreOS) API. Can be used with etcd tokens or via direct node URLs.
- Gandi β0 π 1440 β Gandi Wrapper for Leaseweb infrastructure.
- IElixir β310 π 67 β Jupyterβs kernel for Elixir programming language.
- k8s β157 π 41 β Kubernetes Elixir client with CRD support, multi-cluster support, pluggable auth, and configurable middleware.
- Kazan β131 π 280 β Kubernetes client for Elixir, generated from the k8s open API specifications.
- Kubex β38 π 1998 β Kubernetes client and integration for Elixir, written in pure Elixir.
- Leaseweb β1 π 195 β Elixir Wrapper for Leaseweb infrastructure.
- libcluster β1239 π 248 β Automatic cluster formation/healing for Elixir applications.(Docs).
- nodefinder β53 π 56 β Strategies for automatic node discovery in Erlang.
- nomad β72 π 1602 β Create cloud portable Elixir and Phoenix apps. Write once, use everywhere!
- sidejob β94 π 1709 β Parallel worker and capacity limiting library for Erlang.
- sidetask β71 π 1319 β SideTask is an alternative to Task.Supervisor using Bashoβs sidejob library with parallelism and capacity limiting.
- skycluster β17 π 1298 β Automatic Erlang cluster formation, messaging and management for Elixir/Erlang applications. Integrated with Kubernetes.
Code Analysis
Libraries and tools for code base analysis, parsing, and manipulation.
- belvedere β17 π 2016 β An example of CircleCI integration with Elixir.
- coverex β95 π 865 β Coverage Reports for Elixir.
- credo β3710 π 2 β A static code analysis tool with a focus on code consistency and teaching Elixir. (Docs).
- dialyxir β1259 π 1 β Mix tasks to simplify use of Dialyzer in Elixir projects.(Docs).
- dogma β473 π 1098 β A code style linter for Elixir, powered by shame.(Docs).
- excoveralls β592 π 31 β Coverage report tool for Elixir with coveralls.io integration.
- exprof β147 π 35 β A simple code profiler for Elixir, using eprof.
Command Line Applications
Anything helpful for building CLI applications.
- anubis β118 π 1431 β Command-Line application framework for Elixir.
- ex_cli β180 π 635 β User friendly CLI apps for Elixir.
- ex_prompt β23 π 679 β Helper package to add interactivity to your command line applications as easy as possible.
- firex β25 π 1310 β Firex is a library for automatically generating command line interfaces (CLIs) from an elixir module.
- getopt β233 π 145 β Command-line options parser for Erlang.
- loki β71 π 806 β Library for creating interactive command-line application.
- optimus β110 π 58 β Command-line option parser for Elixir inspired by clap.rs.
- progress_bar β274 π 60 β Command-line progress bars and spinners.
- ratatouille β349 π 302 β A TUI (terminal UI) kit for Elixir.
- scribe β224 π 11 β Pretty-print tables of Elixir structs and maps. Inspired by hirb.
- table_rex β159 π 21 β Generate configurable ASCII style tables for display.
- tabula β70 π 984 β Pretty print list of Ecto query results / maps in ascii tables (GitHub Markdown/OrgMode).
Configuration
Libraries and tools working with configurations
- confex β268 π 63 β Helper module that provides a nice way to read environment configuration at runtime.
- configparser_ex β12 π 730 β A simple Elixir parser for the same kind of files that Pythonβs configparser library handles.
- conform β384 π 903 β Easy release configuration for Elixir apps.
- dotenv β168 π 1 β A port of dotenv to Elixir.
- ex_conf β32 π 2361 β Simple Elixir Configuration Management.
- figaro β8 π 1778 β Simple Elixir project configuration.
- figaro_elixir β10 π 1555 β Environmental variables manager for Elixir.
- sweetconfig β2 π 2399 β Read YAML configuration files from any point at your app.
Cryptography
Encrypting and decrypting data
- aescmac β5 π 379 β AES CMAC (RFC 4493) in Elixir.
- cipher β55 π 555 β Elixir crypto library to encrypt/decrypt arbitrary binaries.
- cloak β400 π 7 β Cloak makes it easy to use encryption with Ecto.(Docs).
- comeonin β1149 π 9 β Password hashing (argon2, bcrypt, pbkdf2_sha512) library for Elixir.(https://hexdocs.pm/comeonin/api-reference.html).
- crypto_rsassa_pss β9 π 543 β RSASSA-PSS Public Key Cryptographic Signature Algorithm for Erlang.
- elixir_tea β2 π 2087 β TEA implementation in Elixir.
- ex_bcrypt β3 π 1701 β Elixir wrapper for the OpenBSD bcrypt password hashing algorithm.
-
ex_crypto
β92
π
344
β
Elixir wrapper for Erlang
crypto
andpublic_key
modules. Provides sensible defaults for many crypto functions to make them easier to use.(Docs). - exgpg β16 π 1905 β Use gpg from Elixir.
- ntru_elixir β13 π 171 β Elixir wrapper for libntru. A post quantum cryptography system.
- one_time_pass_ecto β41 π 82 β One-time password library for Elixir.
- pot β189 π 126 β Erlang library for generating one time passwords compatible with Google Authenticator.
-
rsa
β30
π
427
β
public_key
cryptography wrapper for Elixir. - rsa_ex β34 π 840 β Library for working with RSA keys.
- siphash-elixir β15 π 907 β Elixir implementation of the SipHash hash family.
- tea_crypto β0 π 2214 β Tiny Encryption Algorithm implementation.
CSV
Libraries and implementations working with CSV.
- cesso β23 π 2409 β CSV handling library for Elixir.
- csv β389 π 131 β CSV Decoding and Encoding for Elixir.
- csv2sql β20 π 66 β A fast and fully automated CSV to database importer.
- csvlixir β29 π 898 β A CSV reading/writing application for Elixir.
- ecsv β0 π 71 β Fast libcsv-based stream parser for Elixir.
- ex_csv β41 π 1667 β CSV for Elixir.
- nimble_csv β526 π 112 β A simple and fast CSV parsing and dumping library for Elixir.
Date and Time
Libraries for working with dates and times.
- block_timer β9 π 2273 β Macros to use :timer.apply_after and :timer.apply_interval with a block.
- calendar β420 π 513 β Calendar is a date and time library for Elixir.
- calixir β1 π 87 β Calixir is a port of the Lisp calendar software calendrica-4.0 to Elixir.
- chronos β87 π 1023 β An Elixir date/time library.
- cocktail β86 π 61 β Elixir date recurrence library based on iCalendar events.
- cronex β42 π 378 β Cron like system you can mount in your supervision tree.
- crontab β62 π 35 β A Cron Expressions Parser, Composer & Date Candidate Finder.
- emojiclock β3 π 1381 β An Elixir module for giving you an emoji clock for a given hour.
- ex_ical β21 π 622 β ICalendar parser.
- filtrex β153 π 251 β A library for performing and validating complex SQL-like filters from a client (e.g. smart filters).
- good_times β44 π 489 β Expressive and easy to use datetime functions.
- jalaali β13 π 656 β Jalaali calendar implementation for Elixir.
- milliseconds β1 π 2113 β Simple library to work with milliseconds in Elixir.
- moment β29 π 1930 β Parse, validate, manipulate, and display dates in Elixir.
- open_hours β32 π 564 β Time calculations using business hours.
- quantum β1684 π 52 β Cron-like job scheduler for Elixir applications.
- repeatex β46 π 671 β Natural language parsing for repeating dates.
- tiktak β4 π 549 β Fast and lightweight web scheduler written in Elixir.
- timelier β11 π 1217 β A cron-style scheduler for Elixir.
- timex β1369 π 24 β Easy to use Date and Time modules for Elixir.
- timex_interval β7 π 1930 β A date/time interval library for Elixir projects, based on Timex.
- tzdata β214 π 26 β The timezone database in Elixir.
Debugging
Libraries and tools for debugging code and applications.
- beaker β281 π 1499 β Statistics and Metrics library for Elixir.
- booter β21 π 549 β Boot an Elixir application, step by step.
- dbg β151 π 1368 β Distributed tracing for Elixir.
- eflame β346 π 856 β Flame Graph profiler for Erlang.
- eh β16 π 1938 β A tool to look up Elixir documentation from the command line.
- eper β441 π 930 β Erlang performance and debugging tools.
- ether β6 π 2082 β Ether provides functionality to hook Elixir into the Erlang debugger.
- ex_debug_toolbar β370 π 1025 β A toolbar for Phoenix projects to interactively debug code and display useful information about requests: logs, timelines, database queries etc.
- exrun β98 π 625 β Distributed tracing for Elixir with rate limiting and simple macro-based interface.
- extrace β23 π 93 β Elixir wrapper for Recon Trace.
- git_hooks β51 π 10 β Add git hooks to Elixir projects.
- observer_cli β1029 π 92 β Visualize Elixir & Erlang nodes on the command line, it aims to helpe developers debug production systems.
- quaff β75 π 1568 β The Debug module provides a simple helper interface for running Elixir code in the erlang graphical debugger.
-
rexbug
β117
π
336
β
An Elixir wrapper for the
redbug
production-friendly Erlang tracing debugger. - visualixir β1157 π 499 β A process visualizer for remote BEAM nodes.
Deployment
Installing and running your code automatically on other machines.
- akd β49 π 142 β Capistrano like, Configurable, and easy to set up Elixir Deployment Automation Framework.
- ansible-elixir-stack β294 π 1663 β 1-command setup & deploys to servers, with first-class support for Phoenix apps.
- bootleg β393 π 80 β Simple deployment and server automation for Elixir.
- bottler β40 π 336 β 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.
- edeliver β1883 π 325 β Deployment for Elixir and Erlang.
- elixir-on-docker β161 π 1087 β A project template to get started developing clustered Elixir applications for cloud environments.
- exdm β11 π 1036 β Deploy Elixir applications via mix tasks.
- exreleasy β12 π 570 β Dead simple and Mix friendly tool for releasing Elixir applications.
- gatling β500 π 1426 β Collection of mix tasks to automatically create a exrm release from git and launch/upgrade it on your server.
- heroku-buildpack-elixir β754 π 42 β Heroku buildpack to deploy Elixir apps to Heroku.
Documentation
Libraries and tools for creating documentation.
- blue_bird β47 π 418 β BlueBird is a library written in the Elixir programming language for the Phoenix framework. It lets you generate API documentation in the API Blueprint format from annotations in controllers and automated tests.
- bureaucrat β273 π 10 β Generate Phoenix API documentation from tests.
- ex_doc β984 π 1 β ExDoc is a tool to generate documentation for your Elixir projects.
- ex_doc_dash β62 π 1637 β Formatter for ExDoc to generate docset documentation for use in Dash.app.
- hexdocset β20 π 1883 β Convert hex doc to Dash.appβs docset format.
- maru_swagger β56 π 673 β Add swagger compliant documentation to your maru API.
- phoenix_api_docs β25 π 869 β Generate API Blueprint documentation from controllers and tests in the Phoenix framework.
- phoenix_swagger β515 π 1 β Provides swagger integration to the Phoenix framework.
- xcribe β39 π 48 β Generate API documentation from tests using Swagger (OpenAPI) or API Blueprint specification.
Domain-specific language
Specialized computer languages for a particular application domain.
- Absinthe Graphql β3424 π 1 β Fully featured GraphQL library.
- absinthe_gen β18 π 57 β Scaffold generator for Absithne.
- JSON-LD.ex β39 π 64 β An implementation of the JSON-LD standard for RDF.ex.
- RDF.ex β61 π 14 β An implementation of the RDF data model in Elixir.
- SPARQL.ex β23 π 65 β An implementation of the SPARQL standards in Elixir.
ECMAScript
Implementations working with JavaScript, JScript or ActionScript.
- estree β86 π 542 β A implementation of the SpiderMonkey Parser API in Elixir.
- phoenix_gon β88 π 149 β Allow you to pass Phoenix environment or controller variables to JavaScript without problems.
- phoenix_routes_js β17 π 338 β Phoenix routes helpers in JavaScript code and browser console.
Working with Email and stuff.
- bamboo β1551 π 21 β 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.
- burnex β48 π 43 β Burner email (temporary address) detector.
- echo β31 π 1794 β A meta-notification system; Echo checks notification preferences & dispatches notifications.
- ex_postmark β3 π 217 β Postmark adapter for sending template emails in Elixir.
- gen_smtp β576 π 15 β A generic Erlang SMTP server and client that can be extended via callback modules.
- gmail β47 π 973 β A simple Gmail REST API client for Elixir.
- mail β329 π 99 β An RFC2822 implementation in Elixir, built for composability.
- mailer β40 π 1417 β A simple SMTP mailer.
- mailibex β52 π 37 β Library containing Email-related implementations in Elixir: dkim, spf, dmark, mimemail, smtp.
- mailman β188 π 113 β Mailman provides a clean way of defining mailers in your Elixir applications.
- ravenx β100 π 1069 β Notification dispatch library for Elixir applications.
- smoothie β39 π 1338 β Smoothie inline styles of your email templates, and generates a plain text version from the HTML.
- swoosh β892 π 1 β 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.
Encoding and Compression
Transforming data in different formats or compressing it.
- ex_rlp β18 π 349 β Elixir implementation of Ethereumβs RLP (Recursive Length Prefix) encoding.
- huffman β19 π 2048 β Huffman encoding and decoding in Elixir.
Errors and Exception Handling
Working with errors and exceptions.
- exceptional β252 π 399 β Helpers for happy-path programming & exception handling.
-
happy
β42
π
1431
β
Happy path programming, alternative to elixir
with
form. -
OK
β506
π
374
β
Elegant error handling with result monads, featuring a simple & powerful
with
construct and a happy path pipe operator. - sentry-elixir β420 π 4 β The Official Elixir client for Sentry.
Eventhandling
Sending/Emitting and receiving/handling Events in Elixir.
- event_bus β551 π 1 β Simple event bus implementation with topic filtering and built-in event store and event watcher.
- goldrush β88 π 961 β Small, Fast event processing and monitoring for Erlang/OTP applications.
- reaxive β254 π 1067 β Reaxive is a reactive event handling library, inspired by Elm and Reactive Extensions.
- wait_for_it β12 π 294 β 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.
- butler_cage β2 π 1864 β A Butler plugin for showing silly photos of Nick Cage.
- butler_tableflip β2 π 1814 β Flipping tables with butler.
- changelog.com β2177 π 1 β CMS that runs changelog.com built with Phoenix 1.4.
- coderplanets.com β212 π 251 β GraphQL api for coderplanets.com built with Phoenix 1.4 and Absinthe.
- dice β12 π 1500 β Roll the dice, in Elixir.
- elixir_koans β1612 π 73 β Elixir koans is a fun, easy way to get started with the elixir programming language.
- ex_chain β17 π 1708 β Simple Markov Chain that generates funny tweets, built using Elixir.
- ex_iss β4 π 1811 β 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.
- feedx β9 π 997 β Add social feed functionality to current applications. Exemplify OTP umbrella app, with 3 apps. Thin phoenix controllers.
- harakiri β19 π 1271 β Help applications kill themselves.
- hello_phoenix β128 π 1765 β Application template for SPAs with Phoenix, React and Redux.
- hexpm β778 π 6 β Source code for the hex package manager site built with Phoenix 1.3.
- kaisuu β68 π 1800 β Watch Japanβs Kanji Usage on Twitter in Realtime.
- koans β250 π 1766 β Learn Elixir by using elixir-koans.
- lolcat β6 π 2083 β This is the clone of busyloop/lolcat. But it does not support animation and some features of the original.
- magnetissimo β2487 π 172 β Web application that indexes all popular torrent sites, and saves it to the local database.
- oop β232 π 977 β OOP in Elixir!
-
phoenix-chat-example
β430
π
113
β
A step-by-step example/tutorial for building a Chat app in Phoenix for complete beginners. Covers testing, docs and deployement. Phoenix
1.5.3
. - phoenix-ecto-encryption-example β157 π 251 β A comprehensive example/tutorial showing people how to use Ecto Types to transparently encrypt/decrypt data in a Phoenix 1.4 app.
- phoenix-flux-react β164 π 2112 β An experiment with Phoenix Channels, GenEvents, React and Flux.
-
phoenix-liveview-counter-tutorial
β107
π
17
β
complete beginners step-by-step tutorial building a real time counter in Phoenix
1.5.3
and LiveView0.14.1
. -
phoenix-todo-list-tutorial
β59
π
101
β
A complete beginners step-by-step tutorial for building a Todo List from scratch in Phoenix
1.5.3
. - portal β44 π 597 β A shooting fault-tolerant doors for distributed portal data-transfer application in Elixir.
- real world example app β744 π 413 β Elixir / Phoenix implementation of RealWorld.io backend specs - a Medium clone.
- rubix β2 π 2186 β A very simple (and barely-functioning) Ruby runner for Elixir.
- stranger β59 π 1796 β Elixir Phoenix app to chat anonymously with a randomly chosen stranger.
- tilex β408 π 23 β Source code for Hashrocketβs TIL website built with Phoenix 1.3.
- weather β67 π 856 β 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
- flippant β72 π 2 β Feature flipping for the Elixir world.
- fun_with_flags β530 π 60 β 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.
- molasses β72 π 1365 β A feature toggle library using redis or SQL (using Ecto) as a backing service.
Feeds
Libraries working with feeds like RSS or ATOM.
- atomex β24 π 424 β ATOM feed builder with a focus on standards compliance, security and extensibility.
- feeder β37 π 428 β Parse RSS and Atom feeds.
- feeder_ex β62 π 1353 β RSS feed parser. Simple wrapper for feeder.
- feedme β14 π 1456 β RSS/Atom parser built on erlangβs xmerl xml parser.
Files and Directories
Libraries and implementations for working with files and directories.
- cassius β8 π 1886 β Monitor Linux file system events.
- dir_walker β33 π 13 β DirWalker lazily traverses one or more directory trees, depth first, returning successive file names.
- elixgrep β26 π 1305 β A framework for doing Hadoop style Map/Reduce operations on collections of files.
- ex_guard β78 π 37 β ExGuard is a mix command to handle events on file system modifications.
- ex_minimatch β10 π 2116 β Globbing paths without walking the tree!.
- exfile β87 π 495 β File upload handling, persistence, and processing in Elixir and Plug.
- exfswatch β203 π 62 β A file change watcher wrapper based on fs.
- eye_drops β50 π 1425 β Configurable mix task to watch file changes and run the corresponding command.
- format_parser.ex β18 π 7 β Elixir library to figure out the type and the format of a file.
- fs β193 π 45 β Erlang FileSystem Listener.
- fwatch β4 π 937 β A callback-based file watcher based on fs.
- librex β28 π 198 β Elixir library to convert office documents to other formats using LibreOffice.
- Radpath β20 π 10 β Path library for Elixir, inspired by Pythonβs Enhpath.
- sentix β12 π 1492 β A cross-platform file watcher for Elixir based on fswatch.
- sizeable β26 π 1347 β An Elixir library to make file sizes human-readable.
- waffle β389 π 129 β Flexible file upload and attachment library for Elixir.
- zarex β19 π 198 β Filename sanitization for Elixir.
Formulars
Handling web formulars and similar stuff.
- forms β31 π 32 β Erlang Business Documents Generator.
Framework Components
Standalone component from web development frameworks.
- absinthe_plug β203 π 2 β Plug support for Absinthe.
- access pass β73 π 131 β Authentication framework that can be used with or outside of phoenix. Similar to Addict but geared towards API usage.(Docs).
- addict β653 π 1353 β User authentication for Phoenix Framework.
- airbrake_plug β5 π 2041 β Report errors in your Plug stack or whatever to Airbrake.
- better_params β83 π 820 β Elixir Plug for cleaner request params in web apps.
- blaguth β19 π 980 β Basic Access Authentication in Plug applications.
- commanded β1243 π 7 β Command handling middleware for Command Query Responsibility Segregation (CQRS) applications.
- cors_plug β320 π 17 β An Elixir plug that adds CORS headers to requests and responds to preflight requests (OPTIONS).
- corsica β368 π 53 β Elixir library for dealing with CORS requests.
- crudex β18 π 2137 β CRUD utilities for Phoenix and Ecto.
-
dayron
β148
π
1199
β
A repository similar to
Ecto.Repo
that works with REST API requests instead of a database. - ex_admin β1173 π 1008 β ExAdmin is an auto administration package for Elixir and the Phoenix Framework.
- exdjango β16 π 1374 β A few elixir libraries for working with django.
- exrecaptcha β9 π 2218 β Simple reCaptcha display/verify code for Elixir applications.
- filterable β82 π 225 β Simple query params filtering for Phoenix framework inspired by Rails has_scope.
- graphql_parser β15 π 1781 β An Elixir binding for libgraphqlparser.
- http_router β13 π 1443 β HTTP Router with various macros to assist in developing your application and organizing your code.
- kerosene β206 π 770 β Pagination for Ecto and Phoenix.
- mellon β15 π 1750 β An authentication module for Plug applications.
- multiverse β86 π 1063 β Plug that allows to add version compatibility layers via API Request/Response Gateways.
- params β231 π 229 β Use Ecto to enforce/validate parameters structure, akin to Railsβ strong parameters.
- passport β160 π 1331 β Passport provides authentication for Phoenix applications.
- phoenix_ecto β269 π 118 β Phoenix and Ecto integration.
- phoenix_haml β148 π 1401 β Phoenix Template Engine for Haml.
- phoenix_html β227 π 3 β Phoenix.HTML functions for working with HTML strings and templates.
- phoenix_html_sanitizer β22 π 1548 β HTML Sanitizer integration for Phoenix.
- phoenix_html_simplified_helpers β28 π 780 β Some helpers for phoenix html (truncate, time_ago_in_words, number_with_delimiter).
- phoenix_linguist β17 π 346 β 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. Also beware that Linguist seems to be abandoned too, please refer to corresponding item for details.
- phoenix_live_reload β203 π 79 β Provides live-reload functionality for Phoenix.
- phoenix_meta_tags β14 π 572 β Generate meta tags for a website.
- phoenix_pubsub_postgres β26 π 2091 β Postgresql PubSub adapter for Phoenix apps.
- phoenix_pubsub_rabbitmq β42 π 2130 β RabbitMQ adapter for Phoenixβs PubSub layer.
- phoenix_pubsub_redis β140 π 95 β The Redis PubSub adapter for the Phoenix framework.
- phoenix_pubsub_vernemq β24 π 2033 β The VerneMQ MQTT pubsub adapter for the Phoenix framework.
- phoenix_slime β286 π 335 β Slim template support for Phoenix.
- phoenix_token_auth β161 π 1771 β Token authentication solution for Phoenix. Useful for APIs or single page apps.
- plug β2285 π 1 β A specification and conveniences for composable modules in between web applications.
- plug_accesslog β28 π 12 β Plug for writing access logs.
- plug_and_play β13 π 1418 β Set up a Plug application with less boilerplate.
- plug_auth β66 π 1321 β Collection of authentication-related plugs.
- plug_canonical_host β19 π 45 β Plug to ensure all requests are served from a single canonical host.
- plug_checkup β61 π 16 β Plug for adding simple health checks to your app.
- plug_cloudflare β17 π 60 β Inspired by mod_cloudflare, this Elixir plug parses Cloudflares CF-Connecting-IP HTTP request header into Plug.Connβs remote_ip field.
- plug_forward_peer β21 π 1960 β Very simple plug which reads X-Forwarded-For or Forwarded header according to RFC7239 and fill conn.remote_ip with the root client ip.
- plug_fprof β4 π 2014 β A Plug that adds fprof tracing to requests, to allow for easy profiling.
- plug_graphql β126 π 1681 β Phoenix Plug integration for GraphQL Elixir.
- plug_heartbeat β26 π 63 β A plug for responding to heartbeat requests.
- plug_jwt β36 π 1982 β Plug for JWT authentication.
- plug_password β10 π 1109 β Plug for adding simple cookie-based authentication.
- plug_rails_cookie_session_store β87 π 737 β Rails compatible Plug session store.
- plug_redirect_https β6 π 1485 β Plug to redirect http requests to https requests behind a reverse proxy.
- plug_require_header β26 π 1679 β Require and extract HTTP headers and handle missing ones.
- plug_response_header β11 π 1963 β easy manipulation of HTTP response headers.
- plug_ribbon β21 π 2023 β Injects a ribbon to your web application in the development environment.
- plug_secex β18 π 76 β Plug that adds various HTTP Headers to make Phoenix/Elixir app more secure.
- plug_session_memcached β14 π 400 β A very simple memcached session store for Elixirβs plug.
- plug_sigaws β0 π 1372 β AWS Signature V4 authentication protection for Phoenix/Plug Routes (Docs).
- plug_statsd β47 π 706 β A plug for automatically sending timing and count metrics to statsd.
- plugs β18 π 1709 β Collection of Plug middleware for web applications.
- plugsnag β61 π 57 β Bugsnag notifier for Elixirβs plug.
- raygun β18 π 231 β Capture bugs and send them to Raygun.
- react_phoenix β422 π 74 β Render React.js components in Phoenix views focusing on easy installation and Brunch compatibility.
- recaptcha β90 π 464 β A simple reCaptcha 2 library for Elixir applications.
- resin β4 π 651 β Resin is a plug that will add a configurable delay to every request thatβs passing through it, unless run in production.
- revision_plate_ex β3 π 817 β Plug application and middleware that serves endpoint returns applicationβs REVISION.
- rummage_ecto β186 π 195 β A configurable framework to search, sort and paginate Ecto Queries.
- rummage_phoenix β142 π 195 β A support framework for searching, sorting and paginating models in Phoenix, with HTML support.
- scaffold β6 π 2061 β A mix task for creating new projects based on templates fetched from a Git-repo.
- scrivener β498 π 92 β Paginate your Ecto queries.
- scrivener_headers β41 π 175 β Helpers for paginating API responses with Scrivener and HTTP headers.
- scrivener_html β112 π 589 β Helpers built to work with Scrivenerβs page struct to easily build HTML output for various CSS frameworks.
- sentinel β109 π 1249 β An authentication framework for Phoenix extending guardian with routing and other basic functionality.
- surface β1031 π 23 β A server-side rendering component library for Phoenix.
- torch β597 π 8 β Torch is a rapid admin generator for Phoenix apps. It uses generators rather than DSLs to ensure that the code remains maintainable.
- trailing_format_plug β24 π 1396 β An Elixir plug to support legacy APIs that use a rails-like trailing format.
- webassembly β70 π 1280 β Web DSL for Elixir.
- weebo β2 π 1984 β An XML-RPC parser/formatter for Elixir, with full support for datatype mapping.
Frameworks
Web development frameworks.
- exelli β14 π 2238 β An Elli Elixir wrapper with some sugar syntax goodies.
- kitto β918 π 46 β A framework for interactive dashboards.
- n2o β1254 π 35 β Distributed Application Server.
- nitro β34 π 28 β Nitrogen-compatible Web Framework.
- phoenix β16102 π 1 β Elixir Web Framework targeting full-featured, fault tolerant applications with realtime functionality.
- placid β175 π 1457 β A REST toolkit for building highly-scalable and fault-tolerant HTTP APIs with Elixir.
- rackla β252 π 1579 β API Gateways in Elixir.
- relax β121 π 1795 β Simple Elixir implementation of a jsonapi.org server.
- rest β71 π 378 β Micro-REST framework with typed JSON.
- RIG β454 π 4 β Create low-latency, interactive user experiences for stateless microservices.
- sugar β407 π 1444 β Modular web framework for Elixir.
- trot β382 π 500 β An Elixir web micro-framework.
Games
Libraries for and implementations of games.
- Binbo β55 π 38 β A chess representation written in Erlang using Bitboards, ready for use on game servers.
- entice β100 π 1719 β A distributed Entity-Component-System framework, providing its own example MMORPG server.
- mines β41 π 1357 β A minesweeper clone in the terminal.
- vim_snake β10 π 16 β A classical multiplayer snake game with Vim-style keybinding built with Phoenix framework.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- distance_api_matrix β29 π 1753 β Provide distance and heading calculations via Google distance matrix api.
- geo β446 π 62 β A collection of GIS functions for Elixir.
- geocalc β93 π 101 β Calculate distance, bearing and more between latitude/longitude points.
- geocoder β86 π 30 β A simple, efficient geocoder/reverse geocoder with a built-in cache.
- geohash β19 π 308 β Geohash encode/decode library.
- geohax β8 π 96 β Geohash encoding and decoding with neighbors finder.
-
geoip
β76
π
475
β
Find geolocation for a given IP, hostname or
Plug.Conn
. - geolix β151 π 24 β MaxMind GeoIP2 database reader/decoder.
- geonames β14 π 1024 β A simple Elixir wrapper around the GeoNames API.
- ip2location β15 π 1220 β An Elixir library for IP2Location database.
- ipgeobase β8 π 1709 β Find Russian and Ukraine city by IP address and find country for other country.
- proj β3 π 8 β Elixir coordinate conversion library using OSGeoβs PROJ.4.
- segseg β4 π 1230 β Segment-segment intersection classifier and calculator.
- topo β90 π 432 β A Geometry library for Elixir that calculates spatial relationships between two geometries.
- wheretz β7 π 160 β Elixir version of Ruby gem for lookup of timezone by georgraphic coordinates.
GUI
Libraries for writing Graphical User Interfaces.
- scenic β1577 π 77 β Portable 2D UI framework.
Hardware
Hardware related things like I/O interfaces and such.
- elixir_ale β332 π 730 β Elixir access to hardware I/O interfaces such as GPIO, I2C, and SPI.
- nerves β1604 π 2 β 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).
- exquery β31 π 1402 β A library for parsing HTML and querying elements within.
- floki β1408 π 17 β A simple HTML parser that enables searching using CSS like selectors.
- html_sanitize_ex β174 π 187 β HTML sanitizer for Elixir.
- modest_ex β29 π 354 β A library to do pipeable transformations on html strings with CSS selectors, e.g. find(), prepend(), append(), replace() etc.
- myhtmlex β14 π 815 β Elixir/Erlang bindings for lexborisovβs myhtml.
- readability β185 π 110 β Readability is for extracting and curating articles.
- texas β50 π 982 β Texas is a powerful abstraction over updating your clients using server-side rendering and server-side Virtual DOM diff/patching.
- tidy_ex β9 π 355 β Elixir binding to the granddaddy of HTML tools http://www.html-tidy.org.
HTTP
Libraries for working with HTTP and scraping websites.
- Ace β294 π 61 β HTTP web server and client, supports http1 and http2.
- bolt β32 π 1821 β Simple and fast http proxy.
- cauldron β73 π 1349 β An HTTP/SPDY server as a library.
- Crawler β772 π 252 β A high performance web crawler in Elixir.
- Crawly β388 π 23 β high-level web crawling & scraping framework for Elixir.
- elli β673 π 1059 β Elli is a webserver you can run inside your Erlang application to expose an HTTP API.
- etag_plug β17 π 109 β A simple to use shallow ETag plug.
- explode β37 π 524 β An easy utility for responding with standard HTTP/JSON error payloads in Plug- and Phoenix-based applications.
- exvcr β546 π 54 β HTTP request/response recording library for Elixir, inspired by VCR.
- finch β557 π 36 β An HTTP client with a focus on performance, built on top of Mint and NimblePool.
- fuzzyurl β18 π 1030 β An Elixir library for parsing, constructing, and wildcard-matching URLs. Also available for Ruby and JavaScript.
- gun β696 π 63 β HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.
- hackney β1114 π 33 β Simple HTTP client written in Erlang.
- http β11 π 2173 β HTTP server for Elixir.
- http_digex β3 π 921 β A module to create basic digest HTTP auth header.
- http_proxy β51 π 78 β Multi port HTTP Proxy.
- httpoison β1865 π 9 β Yet Another HTTP client for Elixir powered by hackney.
- httpotion β722 π 331 β Fancy HTTP client for Elixir, based on ibrowse.
- ivar β14 π 1204 β A lightweight wrapper around HTTPoison that provides a fluent and composable way to build http requests.
- lhttpc β1 π 2439 β A lightweight HTTP/1.1 client implemented in Erlang.
- mint β938 π 31 β Functional HTTP client for Elixir with support for HTTP/1 and HTTP/2.
- mnemonic_slugs β9 π 1477 β A memorable, mnemonic slug generator in Elixir.
- mochiweb β1765 π 342 β MochiWeb is an Erlang library for building lightweight HTTP servers.
- neuron β233 π 55 β A GraphQL client for Elixir.
- plug_wait1 β1 π 1098 β Plug adapter for the wait1 protocol.
- raxx β375 π 77 β Interface for HTTP webservers, frameworks and clients.
- river β77 π 768 β An HTTP/2 client that is lightweight and lightning fast.
- scrape β308 π 335 β Scrape any website, article or RSS/Atom Feed with ease.
- sparql_client β17 π 48 β A SPARQL protocol client for Elixir.
- spell β63 π 1310 β Spell is a Web Application Messaging Protocol (WAMP) client implementation in Elixir.
- tesla β1364 π 45 β HTTP client library, with support for middleware and multiple adapters.
- Tube β9 π 330 β Pure Elixir WebSocket client library.
- uri_query β9 π 716 β URI encode nested GET parameters and array values in Elixir.
- uri_template β14 π 996 β RFC6570 compliant URI template processor for Elixir.
- web_socket β60 π 1287 β An exploration into a stand-alone library for Plug applications to easily adopt WebSockets.
- webdriver β108 π 1820 β This is an implementation of the WebDriver protocol client. It currently supports PhantomJS, FireFox, ChromeDriver and remote webdriver servers (e.g. Selenium).
- yuri β10 π 1871 β Simple struct for representing URIs.
Images
Libraries for working with and manipulating images.
- alchemic_avatar β48 π 1147 β Elixir library for generating letter avatar from string.
- artifact β43 π 1749 β File upload and on-the-fly processing for Elixir.
- bump β2 π 2145 β A BMP file writer in pure Elixir.
- chunky_svg β26 π 1566 β A library for drawing things with SVG.
- cloudex β83 π 322 β Cloudex is an Elixir library that can upload image files or urls to Cloudinary.
- eikon β9 π 1693 β An Elixir library providing a read-only interface for image files.
- elixir_exif β12 π 323 β Parse exif tags and thumbnail data from jpeg files.
- ex_image_info β47 π 787 β An Elixir library to parse images (binaries) and get the dimensions, detected mime-type and overall validity for a set of image formats.
- exexif β36 π 176 β Pure Elixir library to extract TIFF and EFIX metadata from jpeg files.
- exfavicon β6 π 1748 β An Elixir library for discovering favicons.
- identicon β22 π 2041 β An Elixir library for generating 5x5 identicons.
- imagineer β107 π 804 β Image parsing in Elixir.
- imgex β30 π 363 β Unofficial client library for generating imgix URLs in Elixir.
- mogrify β431 π 164 β An Elixir wrapper for ImageMagick command line.
- png β37 π 232 β 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.
- thumbnex β42 π 196 β Create thumbnails from images and video screenshots.
Instrumenting / Monitoring
Libraries for collecting and exporting metrics.
- elixometer β789 π 17 β A light Elixir wrapper around exometer.
- erlang-metrics β66 π 862 β A generic interface to different metrics systems in Erlang.
- exometer β507 π 1809 β Basic measurement objects and probe behavior in Erlang.
- folsom_ddb β5 π 1224 β DalmatinerDB backend to store folsom metrics.
- graphitex β3 π 1357 β Graphite/Carbon client for Elixir.
- instream β172 π 2 β InfluxDB driver for Elixir.
- instrumental β9 π 2060 β An Elixir client for Instrumental.
- newrelic.ex β64 π 520 β Collects metrics from your Elixir/Phoenix application and sends them to NewRelic.
- prometheus β271 π 87 β Prometheus.io monitoring system and time series database client in Erlang.
- prometheus-ecto β67 π 10 β Ecto instrumenter for prometheus.ex.
- prometheus-phoenix β65 π 545 β Phoenix instrumenter for prometheus.ex.
- prometheus-plugs β51 π 10 β Plugs instrumenters/exporter for prometheus.ex.
- prometheus.ex β336 π 10 β Elixir-friendly Prometheus.io monitoring system and time series database client.
- prometheus_process_collector β43 π 251 β 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.
- spandex β230 π 3 β Platform agnostic tracing library originally developed for Datadog APM.
- telemetry β630 π 112 β Dynamic dispatching library for metrics and instrumentations.
- wobserver β896 π 1274 β Web based metrics, monitoring, and observer.
JSON
Libraries and implementations working with JSON.
- exjson β72 π 1612 β JSON parser and generator in Elixir.
- ja_serializer β616 π 94 β JSONAPI.org Serialization in Elixir.
- jason β1138 π 29 β A blazing fast JSON parser and generator in pure Elixir.
- jazz β60 π 926 β Yet another library to handle JSON in Elixir.
- joken β571 π 116 β Encodes and decodes JSON Web Tokens.
- jose β228 π 2 β JSON Object Signing and Encryption (JOSE) for Erlang and Elixir.
- json β216 π 22 β Native JSON library for Elixir.
- json_pointer β9 π 468 β Implementation of RFC 6901 which defines a string syntax for identifying a specific value within a JSON document.
- json_stream_encoder β4 π 1156 β JsonStreamEncoder is a streaming encoder for streaming JSON to an IOish thing in Elixir.
- json_web_token_ex β138 π 1291 β An Elixir implementation of the JSON Web Token (JWT) Standards Track (RFC 7519).
- jsonapi β385 π 66 β A project that will render your data models into JSONAPI Documents.
- jsx β640 π 129 β An Erlang application for consuming, producing, and manipulating json.
- jsxn β27 π 1940 β jsx but with maps.
- jwalk β6 π 424 β Helper module for working with Erlang representations of JSON.
- jwtex β5 π 2089 β A library to encode and decode JWT tokens.
- poison β1818 π 909 β Poison is a new JSON library for Elixir focusing on wicked-fast speed without sacrificing simplicity, completeness, or correctness.
- tiny β46 π 714 β Tiny, fast and fully compliant JSON parser for Elixir.
- world_json β6 π 2095 β topojson country and state/province collections for elixir/erlang.
Languages
Languages built on top of Elixir.
- Elchemy β1065 π 310 β Compiler allowing to translate Elm programming language code to Elixir.
- lighthouse_scheme β38 π 1465 β A small Lisp-like language and interactive REPL, built in Elixir.
- Monkey β116 π 1098 β 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.
- abnf_parsec β30 π 25 β ABNF in and parser out.
- ex_abnf β52 π 1460 β Parser for ABNF Grammars in Elixir.
- lex_luthor β25 π 1365 β LexLuthor is a Lexer in Elixir which uses macros to generate a reusable lexers.
Logging
Logging infos and messages.
- bunyan β92 π 715 β Bunyan: An Elixir Logger.
- exlager β65 π 1345 β Elixir binding for lager.
- exsentry β23 π 489 β Error logging to Sentry.
- gelf_logger β27 π 182 β A Logger backend that will generate Graylog Extended Log Format (GELF) messages.
- honeybadger β128 π 27 β Error logging to Honeybadger.
- json_logger β23 π 291 β JSON Logger is a logger backend that outputs elixir logs in JSON format.
- lager β35 π 1569 β A logging framework for Erlang/OTP by basho.com.
- lager_logger β25 π 1022 β A lager backend that forwards all log messages to Elixirβs Logger.
- logfmt β18 π 461 β Logfmt is a module for encoding and decoding logfmt-style log lines.
- logger_logstash_backend β66 π 1174 β A backend for the Elixir Logger that will send logs to the Logstash UDP input.
- logglix β10 π 1186 β A logger backend for posting errors to Loggly.
- logster β170 π 96 β Easily parsable, one-line logging for Phoenix and Plug applications, inspired by Lograge.
- metrix β49 π 841 β Log custom app metrics to stdout for use by Librato and other downstream processors.
- mstore β11 π 1212 β MStore is a experimental metric store build in erlang, the primary functions are open, new, get and put.
- rogger β8 π 2082 β Elixir logger to publish log messages in RabbitMQ.
- rollbax β223 π 386 β Exception tracking and logging to Rollbar.
- slack_logger_backend β31 π 1261 β A logger backend for posting errors to Slack.
- syslog β83 π 267 β Erlang port driver for interacting with syslog via syslog(3).
- timber β225 π 616 β Structured logging platform; turns raw text logs into rich structured events.
- youtrack_logger_backend β3 π 934 β 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.
- anaphora β16 π 1793 β 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.
- apix β11 π 478 β Simple convention and DSL for transformation of elixir functions to an API for later documentation and or validation.
- backports β3 π 1203 β Use new functions in Elixir 1.1 and 1.2.
- crudry β42 π 129 β Crudry is an elixir library for DRYing CRUD of Phoenix Contexts and Absinthe Resolvers.
- eventsourced β99 π 1347 β Build functional, event-sourced domain models.
- expat β156 π 891 β Reusable, composable patterns across Elixir libraries.
- guardsafe β23 π 1679 β Macros expanding into code that can be safely used in guard clauses.
- kwfuns β2 π 1861 β Macros to create functions with syntax based keyword parameters with default values.
- lineo β0 π 2083 β parse transform for accurate line numbers.
- mdef β45 π 319 β Easily define multiple function heads in Elixir.
- named_args β28 π 1086 β Allows named arg style arguments in Elixir.
-
ok_jose
β91
π
1170
β
Pipe elixir functions that match
{:ok,_}
,{:error,_}
tuples or custom patterns. - opus β294 π 74 β A framework for pluggable business logic components.
- pathex β27 π 7 β Zero-dependency, blazing fast functional lenses.
- pattern_tap β56 π 1294 β Macro for tapping into a pattern match while using the pipe operator.
- pipe_here β28 π 1431 β Easily pipe values into any argument position.
- pipe_to β71 π 152 β The enhanced pipe operator which can specify the target position.
- pipes β314 π 865 β Macros for more flexible composition with the Elixir Pipe operator.
- pit β22 π 323 β Transform values as they flow inside a pipe.
- rebind β0 π 2073 β rebind parse transform for Erlang.
- rulex β11 π 545 β Simple rule handler using Elixir pattern matching.
-
shorter_maps
β179
π
1129
β
~M sigil for map shorthand.
~M{id name} ~> %{id: id, name: name}
. - unsafe β11 π 538 β Generate easy unsafe (!) bindings for Elixir functions.
Markdown
Libraries and tools working with Markdown and such.
- cmark β68 π 24 β Elixir NIF for CommonMark (in C), a parser following the CommonMark spec.
- discount β20 π 1940 β Elixir NIF for discount, a Markdown parser.
- earmark β655 π 48 β Markdown parser for Elixir.
- Markdown β83 π 1416 β Implemented entirely as a NIF binding to the Hoedown library.
- Pandex β52 π 602 β 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.
- address_us β20 π 41 β Library for parsing US Addresses into their individual parts.
- AlloyCI β273 π 178 β 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.
- Apex β265 π 898 β Awesome Print for Elixir.
- AtomVM β798 π 95 β AtomVM allows to run Elixir/Erlang code on embedded devices such as ESP32 and STM32 microcontrollers.
- bupe β65 π 146 β EPUB Generator and Parser.
- charm β3 π 2276 β Use ANSI terminal characters to write colors and cursor positions.
- codec-beam β152 π 549 β Generate Erlang VM byte code from Haskell.
- Countries β106 π 14 β Countries is a collection of all sorts of useful information for every country in the ISO 3166 standard.
- countriex β22 π 1472 β A pure elixir country data provider containing various information for every country in ISO 3166.
- dye β16 π 1673 β A library for dyeing your terminal output.
- dynamic_compile β1 π 2292 β Compile and load Erlang modules from string input.
- ecto_autoslug_field β126 π 24 β Automatically creates slugs for your Ecto models.
- egaugex β1 π 923 β Client to fetch and parse realtime data from egauge devices.
- elixir-browser β68 π 138 β Browser detection for Elixir.
- epub_cover_extractor β4 π 102 β Extract cover from EPUB files.
- erlang_term β26 π 56 β Provide the in-memory size of Erlang terms, ignoring where these are stored.
-
ex2ms
β130
π
405
β
Translates Elixir functions to match specifications for use with
ets
. - ex_phone_number β129 π 120 β Format, normalize, and validate phone numbers.
- ex_rated β324 π 10 β Simple and flexible rate-limiting for APIβs or anything.
- exfcm β1 π 1569 β Simple wrapper for posting Firebase Cloud Messages.
- exldap β50 π 1018 β A module for working with LDAP from Elixir.
- exlibris β10 π 2272 β A collection of random library functions.
- expool β24 π 1760 β A small process pooling library for parallel tasks in Elixir.
- exprint β33 π 1450 β A printf / sprintf library for Elixir, works as a wrapper for :io.format.
- expyplot β20 π 149 β Elixir interface for Plotting/Graphing library using matplotlib.pyplot.
- exquisite β74 π 402 β LINQ-like match_spec generation for Elixir.
- exsync β95 π 225 β Yet another Elixir reloader.
- funnel β32 π 1668 β Streaming Elixir API built upon ElasticSearchβs percolation.
- gen_task β21 π 1240 β Generic Task behavior that helps to encapsulate worker errors and recover from them in classic GenStageβs.
- gimei_ex β6 π 1893 β Elixir port of gimei library.
- growl β8 π 1161 β Simple wrapper for growl, the notification system for OSX.
- hammer β365 π 749 β A rate-limiter with pluggable storage backends, including Redis.
- html_entities β68 π 369 β Elixir module for decoding HTML entities in a string.
- huex β56 π 772 β Elixir client for Philips Hue connected light bulbs.
- japan_municipality_key β0 π 1099 β Elixir Library for Japan municipality key converting.
- Jisho-Elixir β18 π 319 β An API wrapper for Jisho.org, an online Japanese dictionary. Allows users to search by word, symbol, and or tags (refer to docs).
- keys1value β1 π 56 β Erlang set associative map for key lists.
- licensir β43 π 40 β A mix task that lists the license(s) of all installed packages in your project.
- mixgraph β12 π 1755 β An interactive dependency plotter for your Hex Package.
- mixstar β12 π 1938 β MixStar starred GitHub repository that depends on your project.
- netrc β4 π 1894 β Reads netrc files implemented in Elixir.
- onetime β4 π 937 β An onetime key-value store for Elixir.
- pact β71 π 864 β Better dependency injection in Elixir for cleaner code and testing.
- phone β93 π 23 β A parser to get useful info from telephone numbers.
- porcelain β802 π 92 β Porcelain implements a saner approach to launching and communicating with external OS processes from Elixir.
- presentex β11 π 1872 β Elixir to HTML/JavaScript based presentation framework.
- ratekeeper β15 π 922 β Rate limiter and rate-limited actions scheduler.
- ratx β19 π 1205 β Rate limiter and overload protection for erlang application.
- reprise β40 π 297 β Simplified module reloader for Elixir.
- spawndir β3 π 2277 β Spawns processes from the file system.
- spotify_ex β109 π 11 β An Elixir wrapper for the Spotify Web API.
- std_json_io β26 π 1609 β Application for managing and communicating with IO servers via JSON.
- url_unroller β5 π 1275 β Simple URL unroller (un-shortener) in Elixir.
- vessel β18 π 1508 β Elixir MapReduce interfaces with Hadoop Streaming integration.
Native Implemented Functions
Tools and libraries working with Erlang NIF.
- hsnif β24 π 2778 β Tool that allows to write Erlang NIF libraries in Haskell.
- nifty β27 π 1932 β Helper script for setting up the boilerplate required when writing a NIF.
- Rustler β2588 π 14 β 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.
- gibran β60 π 1369 β Gibran is an Elixir port of WordsCounted, a natural language processor that extracts useful statistics from text.
- Paasaa β85 π 198 β Natural language detection for Elixir.
- Petrovich β33 π 44 β Elixir library to inflect Russian first, last, and middle names.
- Tongue β11 π 412 β Elixir port of Nakatani Shuyoβs natural language detector.
- Woolly β41 π 324 β Woolly is an ambitious Text Mining and Natural Language Processing API for Elixir.
Networking
Libraries and tools for using network related stuff.
- asn β8 π 1625 β Can be used to map from IP to AS to ASN.
- chatter β26 π 1692 β Secure message broadcasting based on a mixture of UDP multicast and TCP.
- download β28 π 1289 β Download files from the internet easily.
- eio β12 π 1944 β Elixir server of engine.io.
- ExPcap β23 π 722 β PCAP parser written in Elixir.
- hades β15 π 302 β A wrapper for NMAP written in Elixir.
- mac β4 π 1625 β Can be used to find a vendor of a MAC given in hexadecimal string (according to IEEE).
- pool β6 π 1927 β Socket acceptor pool for Elixir.
- reagent β89 π 1295 β reagent is a socket acceptor pool for Elixir.
- sockerl β0 π 869 β 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.
- socket β638 π 402 β Socket wrapping for Elixir.
- sshex β133 π 46 β Simple SSH helpers for Elixir.
- sshkit β105 π 30 β An Elixir toolkit for performing tasks on one or more servers, built on top of Erlangβs SSH application.
- torex β5 π 323 β Simple Tor connection library.
- tunnerl β14 π 145 β SOCKS4 and SOCKS5 proxy server.
- wifi β32 π 2046 β Various utility functions for working with the local Wifi network in Elixir.
- wpa_supplicant β5 π 1709 β Elixir interface to the wpa_supplicant.
Office
Libraries for working with office suite documents.
- elixlsx β174 π 38 β A writer for XLSX files.
- excellent β22 π 744 β An OpenXL (Excel 2000) Parser for Elixir.
- xlsxir β163 π 253 β 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.
- amnesia β624 π 402 β Mnesia wrapper for Elixir.
- arbor β176 π 232 β Ecto adjacency list and tree traversal.
- arc_ecto β242 π 408 β Arc.Ecto provides an integration with Arc and Ecto.
- atlas β213 π 2348 β Object Relational Mapper for Elixir.
- barrel_ex β0 π 323 β Barrel-db distributed document-oriented database REST client in Elixir.
- Bolt.Sips β193 π 131 β Neo4j driver for Elixir using the Bolt protocol.
- boltun β122 π 1336 β Transforms notifications from the Postgres LISTEN/NOTIFY mechanism into callback execution.
- caylir β18 π 13 β Cayley driver for Elixir.
- comeonin_ecto_password β32 π 454 β Ecto custom type for storing encrypted password using Comeonin.
- couchdb_connector β93 π 802 β A connector for CouchDB, the Erlang-based, JSON document database.
- craterl β8 π 1858 β Erlang client for crate.
- database_url β8 π 2070 β Parse database URL and return keyword list for use with Ecto.
- datomex β38 π 1811 β Elixir driver for the Datomic REST API.
- ddb_client β9 π 1093 β DalmatinerDB client.
- defql β99 π 894 β Create elixir functions with SQL as a body.
- dexts β4 π 1624 β Disk Elixir Terms Storage, dest wrapper.
- diver β46 π 1647 β A HBase driver for Erlang/Elixir using Jinterface and the Asynchbase Java client to query the database.
- dproto β1 π 323 β Protocols for DalmatinerDB.
- dqe β9 π 1227 β DalmatinerDB query engine.
- ecto β4945 π 1 β A database wrapper and language integrated query for Elixir.
- ecto_cassandra β81 π 810 β Cassandra DB Adapter for Ecto.
- ecto_enum β535 π 93 β Ecto extension to support enums in models.
- ecto_facade β66 π 1052 β Ecto facade that allows to separate writes and reads to different databases.
- ecto_fixtures β161 π 286 β Fixtures for Elixir apps using Ecto.
- ecto_lazy_float β6 π 2167 β Ecto.LazyFloat - An Ecto.Float that accepts binary and integers.
- ecto_migrate β32 π 1585 β Ecto auto migration library. It allows to generate and run migrations for initial and update migrations.
- ecto_mnesia β220 π 184 β Ecto adapter for Mnesia Erlang term database.
- ecto_ordered β33 π 1535 β Ecto extension for ordered models.
- ecto_paging β13 π 1236 β Cursor-based pagination for Ecto.
- ecto_psql_extras β171 π 2 β Ecto PostgreSQL database performance insights.
- ecto_rut β113 π 889 β Simple and Powerful Ecto Shortcuts to simplify and speed up development.
- ecto_shortcuts β29 π 1576 β Shortcuts for common operations in ecto.
- ecto_shortuuid β15 π 336 β Ecto type which adds support for ShortUUIDs.
- ecto_validation_case β9 π 1967 β Simplify your Ecto model validation tests. Loosely inspired by shoulda matchers, but simpler.
- ectophile β40 π 1810 β Ecto extension to instantly support file uploads in models.
- elastic β60 π 244 β A thin-veneer over HTTPotion to help you talk to Elastic Search.
- elastix β222 π 85 β A simple Elastic REST client written in Elixir.
- eredis β594 π 724 β Erlang Redis client.
- erlastic_search β151 π 337 β An Erlang app for communicating with Elastic Searchβs rest interface.
- esqlite β84 π 84 β Erlang NIF for sqlite.
- eternal β63 π 50 β Keep your ETS tables alive forever, safely and easily.
- ets_map β7 π 1874 β An Elixir package that provides a Map-like interface (Map/Access/Enumerable/Collectable) backed by an ETS table.
- eventstore β713 π 51 β A CQRS EventStore using Postgres for persistence, written in Elixir.
- ex_bitcask β10 π 2140 β Elixir wrapper of Bashoβs Bitcask Key/Value store.
- ex_sider β6 π 1602 β Elixir Map/List/Set interfaces for Redis data structures (uses Redix, but that is configurable).
- exleveldb β39 π 849 β Elixir wrapper around Bashoβs eleveldb module for LevelDB.
- exnumerator β63 π 329 β Elixir enumerable type definition in a simple way to be used with any database.
- exredis β356 π 739 β Redis client for Elixir.
- exseed β15 π 1267 β An Elixir library that provides a simple DSL for seeding databases through Ecto.
- exsolr β20 π 1322 β A Solr wrapper written in Elixir.
- extreme β109 π 569 β An Elixir library using Eventstore for persistence of events generated by aggregates (CQRS).
- exts β7 π 1396 β Elixir Terms Storage, ets wrapper.
- github_ecto β116 π 1394 β Ecto adapter for GitHub API.
- gremlex β61 π 700 β Apache Tinkerpop Gremlin Elixir Client.
- hstore β10 π 2004 β Hstore support for Postgrex.
- inquisitor β159 π 201 β Composable query builder for Ecto.
- isn β8 π 1091 β Ecto types for the postgreSQL isn extension.
- kalecto β138 π 890 β Glue between Kalends and Ecto for saving dates, times and datetimes.
- kvs β158 π 52 β Erlang Abstract Term Database.
- level β4 π 2084 β Level for Elixir implements various helper functions and data types for working with Googles Level data store.
- mariaex β257 π 771 β MariaDB/MySQL driver for Elixir.
- memento β591 π 158 β Simple Mnesia Interface in Elixir.
- moebius β530 π 562 β A functional query tool for Elixir and PostgreSQL.
- mongo β102 π 1878 β MongoDB driver for Elixir.
- mongodb β451 π 80 β MongoDB driver for Elixir.
- mongodb_driver β57 π 13 β Alternative driver for MongoDB with support for recent versions of MongoDB and comprehensive feature list.
- mongodb_ecto β317 π 769 β MongoDB adapter for Ecto.
- mysql β320 π 101 β MySQL/OTP β MySQL driver for Erlang/OTP.
- mysqlex β6 π 1089 β An Ecto-compatible wrapper around the mysql-otp library.
- neo4j_sips β78 π 1334 β Neo4j driver for Elixir.
- neo4j_sips_models β5 π 322 β Minimalistic Model support for the Neo4j.Sips Elixir driver.
- panoramix β19 π 9 β Apache Druid client for Elixir.
- paper_trail β371 π 25 β Ecto plugin for tracking and recording all the changes in your database.
- pillar β23 π 30 β Clickhouse HTTP based client.
- postgrex β793 π 2 β PostgreSQL driver for Elixir.
- red β14 π 1263 β Persist relationships between objects in Redis, in a graph-like way.
- rediscl β11 π 272 β A minimal redis client with connection pooling and pipe query builder.
- redix β797 π 53 β Superfast, pipelined, resilient Redis driver for Elixir.
- redo β18 π 735 β Herokuβs pipelining redis client for erlang.
- rethinkdb β497 π 786 β Rethinkdb client in pure Elixir using JSON protocol.
- riak β192 π 1025 β A Riak client written in Elixir.
- riak_ecto β30 π 1679 β Riak adapter for Ecto.
- shards β264 π 47 β Transparent and out-of-box Sharding support for Erlang/Elixir ETS tables.
- sql_dust β106 π 1305 β Generate (complex) SQL queries using magical Elixir SQL dust.
- sqlite_ecto β72 π 1824 β SQLite3 adapter for Ecto.
- sqlitex β105 π 32 β An Elixir wrapper around esqlite. Allows access to sqlite3 databases.
- ssdb_elixir β5 π 322 β ssdb client for Elixir, with focus on performance.
- tds β85 π 49 β MSSQL / TDS Database driver for Elixir.
- tds_ecto β58 π 327 β MSSQL / TDS Adapter for Ecto.
- timex_ecto β154 π 570 β An adapter for using Timex DateTimes with Ecto.
- tirexs β421 π 335 β An Elixir flavored DSL for building JSON based requests to Elasticsearch engine.
- triplex β249 π 35 β Database multitenancy with postgres schemas for Elixir applications!
- triton β67 π 400 β Pure Elixir Cassandra ORM built on top of Xandra.
- udpflux β3 π 2039 β An opinionated InfluxDB UDP only client.
- xandra β236 π 361 β Cassandra driver built natively in Elixir and focused on speed, simplicity, and robustness.
- yar β8 π 2195 β Yet another Redis client for Elixir.
OTP
Libraries for working with OTP related things.
- core β43 π 2321 β Library for selective receive OTP processes.
- erlexec β412 π 12 β Execute and control OS processes from Erlang/OTP.
- immortal β160 π 310 β Immortal is a small collection of helper modules intended to make it easier to build a fault-tolerant OTP application.
- libex_config β1 π 2333 β Helpers for accessing OTP application configuration.
Package Management
Libraries and tools for package and dependency management.
- rebar3_hex β69 π 57 β Hex.pm plugin for rebar3.
Libraries and software for working with PDF files.
- chromic_pdf β62 π 1 β A client for Chromeβs DevTools API to generate PDFs (HTML to PDF).
- gutenex β225 π 804 β Native PDF generation for Elixir.
- pdf2htmlex β72 π 1835 β Convert PDF docs to beautiful HTML files without losing text or format.
- pdf_generator β241 π 322 β A simple wrapper for wkhtmltopdf or puppeteer (HTML to PDF) for use in Elixir projects.
- puppeteer_pdf β77 π 520 β Another wrapper around puppeteer (HTML to PDF) for use in Elixir projects.
Protocols
Special protocol and format libraries.
- elixir_radius β10 π 448 β RADIUS Protocol on Elixir.
- ex_hl7 β28 π 387 β Health Level 7 (HL7) is a protocol designed to model and transfer health-related data electronically.
- ex_marshal β35 π 814 β Ruby Marshal format implemented in Elixir.
- exprotobuf β464 π 555 β Protocol Buffers in Elixir, made easy.
- grpc-elixir β827 π 63 β The Elixir implementation of gRPC.
- message_pack β70 π 2038 β MessagePack Implementation for Elixir.
- msgpax β219 π 16 β MessagePack (de)serializer implementation for Elixir.
- protox β94 π 4 β Elixir implementation for Protocol Buffers.
- riffed β290 π 218 β Provides idiomatic Elixir bindings for Apache Thrift.
- Sippet β44 π 64 β An Elixir library designed to be used as SIP protocol middleware.
- SMPPEX β61 π 39 β SMPP 3.4 protocol and framework implementation in Elixir.
Queue
Libraries for working with event and task queues.
- adap β14 π 1340 β Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules.
- amqp β522 π 9 β Simple Elixir wrapper for the Erlang RabbitMQ client, based on Langohr.
- broadway β1219 π 8 β Concurrent and multi-stage data ingestion and data processing with Elixir.
- conduit β114 π 175 β A framework for working with message queues, with adapters for SQS and AMQP, and plugs for reusable messaging patterns.
- cspex β21 π 938 β Simple, OTP compliant, Elixir implementation of CSP channels.
- dbus β5 π 2116 β A dumb message bus for sharing data between microservices decoupled using Redis.
- ecto_job β243 π 108 β A transactional job queue built with Ecto, PostgreSQL and GenStage.
- elixir_nsq β75 π 414 β NSQ client library for Elixir.
- elixir_talk β19 π 1329 β An Elixir client for beanstalkd.
- enm β113 π 1162 β enm is an Erlang port driver that wraps the nanomsg C library.
- exdisque β15 π 794 β Elixir client for Disque, an in-memory, distributed job queue.
- exq β1203 π 19 β Job processing library for Elixir - compatible with Resque/Sidekiq.
- exrabbit β47 π 2293 β RabbitMQ bindings and DSL for Elixir.
- flume β30 π 279 β A blazing fast job processing system backed by GenStage & Redis.
- gen_rmq β145 π 5 β Set of behaviours meant to be used to create RabbitMQ consumers and publishers.
- heapq β6 π 2308 β A Heap-based Priority Queue Implementation in Elixir.
- honeydew β662 π 152 β Honeydew is a worker pool library for Elixir.
- hulaaki β115 π 214 β An MQTT 3.1.1 client library written in Elixir.
- kafka_consumer β25 π 1311 β Consumer for Kafka using kafka_ex.
- kafka_ex β462 π 14 β Kafka client library for Elixir.
- mqs β27 π 1949 β RabbitMQ client library, routing keys, RPC over MQ and other stuff.
- oban β1469 π 1 β Robust asynchronous job processor powered by Elixir and modern PostgreSQL.
- opq β174 π 6 β A simple, in-memory queue with worker pooling and rate limiting in Elixir.
- pqueue β151 π 56 β Erlang Priority Queue Implementation.
- que β609 π 519 β Simple Background Job Processing with Mnesia.
- queuex β10 π 1472 β Priority Queue with multiple backends.
- RBMQ β19 π 975 β Simple API for spawning RabbitMQ Producers and Consumers.
- Rihanna β395 π 28 β High performance postgres-backed job queue for Elixir.
- task_bunny β193 π 806 β background processing application written in Elixir and uses RabbitMQ as a messaging backend.
- toniq β339 π 1071 β Simple and reliable background job library for Elixir.
- verk β663 π 213 β Verk is a job processing system backed by Redis. It uses the same job definition of Sidekiq/Resque.
- work_queue β38 π 319 β Simple implementation of the hungry-consumer model in Elixir.
Release Management
Libraries and tools for release management.
- changex β38 π 573 β Automated changelog generation from GIT logs.
- distillery β2724 π 339 β A pure Elixir implementation of release packaging functionality for the Erlang VM.
- eliver β48 π 436 β Interactive semantic versioning for Elixir packages.
- exrm β936 π 1309 β Automatically generate a release for your Elixir project.
- exrm_deb β75 π 1262 β Create a deb for your Elixir release with ease.
- exrm_heroku β45 π 2157 β Publish your Elixir releases to Heroku with ease.
- exrm_rpm β38 π 1682 β Create a RPM for your Elixir release with ease.
- mix_docker β335 π 959 β Put your Elixir app production release inside minimal docker image.
- relex β59 π 2467 β Erlang/Elixir Release Assembler.
- renew β33 π 1206 β Mix task to create mix projects that builds into Docker containers.
REST and API
Libraries and web tools for developing REST-ful APIs.
- accent β23 π 83 β Plug for handling the conversion of JSON API keys to different cases.
- detergent β61 π 2904 β An emulsifying Erlang SOAP library.
- detergentex β62 π 960 β Elixir binding to Detergent erlang library used to call WSDL/SOAP Services.
- maru β1267 π 549 β Elixir copy of grape for creating REST-like APIs.
- mazurka β15 π 1098 β hypermedia api toolkit.
- plug_rest β43 π 361 β REST behaviour and Plug router for hypermedia web applications.
- signaturex β21 π 1201 β Simple key/secret based authentication for APIs.
- urna β94 π 1346 β Urna is a simple DSL around cauldron to implement REST services.
- versionary β28 π 514 β API versioning for Elixir Plug and Phoenix.
Search
Libraries related to search indexing, search algorithms and search clients.
- elasticsearch β310 π 5 β A simple, no-nonsense Elasticsearch library for Elixir.
- elasticsearch_elixir_bulk_processor β8 π 61 β An efficient and flexible way to insert into Elasticsearch.
- giza_sphinxsearch β16 π 152 β Client for Sphinx Search compatible with Manticore.
Security
Libraries and tools regarding security.
- ca β9 π 90 β Certificate Authority.
- clamxir β6 π 312 β ClamAV wrapper for elixir.
- Ockam β290 π 1 β 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 .
- pwned β14 π 295 β Check if your password has been pwned.
- safetybox β17 π 1916 β Security oriented helper functions for Elixir.
- sobelow β1055 π 11 β Security-focused static analysis for the Phoenix Framework.
- ssl_verify_fun β73 π 42 β Collection of ssl verification functions for Erlang.
Static Page Generation
Tools and libraries for generating static websites and content.
- blogit β31 π 311 β An OTP application for generating blogs from git repositories containing markdown files.
- coil β63 π 2489 β Minimalistic static content engine.
- glayu β68 π 1245 β A static site generator for mid-sized sites.
- medusa β3 π 627 β Elixir static site generator that supports Pug.
- obelisk β361 π 1430 β Static blog and website generator.
- serum β241 π 19 β A simple static website generator written in Elixir.
Statistics
Libraries around the topic statistics.
- descriptive_statistics β9 π 506 β Descriptive Statistics for Elixir.
- mtx β16 π 2099 β MTX supports front-end API for tracking Histogram, Meter, Counter, Gauge, Timing keys.
- numerix β153 π 36 β A collection of useful mathematical functions with a slant towards statistics, linear algebra and machine learning.
- simple_stat_ex β12 π 524 β Ecto compatible library for simple stat keeping by time period.
- statistics β98 π 301 β Some basic statistical functions for Elixir.
Templating
Libraries parsing and helping with templates
- bbmustache β136 π 79 β Binary pattern match Based Mustache template engine for Erlang/OTP.
- calliope β183 π 1389 β An Elixir HAML parser.
- eml β111 π 185 β Library for writing and manipulating (HTML) markup in Elixir.
- exgen β26 π 371 β A templating library for quickly generating Elixir projects.
- expug β74 π 1183 β Pug templates for Elixir.
- mustache β40 π 1113 β Mustache templates for Elixir.
- mustachex β16 π 847 β Mustache for Elixir - Logic-less templates.
- slime β312 π 337 β An Elixir library for rendering slim-like templates.
- taggart β32 π 1012 β HTML as code in Elixir.
- templates β3 π 1978 β Helper library for adding templating to web applications.
Testing
Libraries for testing codebases and generating test data.
- amrita β201 π 1294 β A polite, well mannered and thoroughly upstanding testing framework for Elixir.
- apocryphal β15 π 1558 β Swagger based document driven development for ExUnit.
- blacksmith β167 π 1589 β Data generation framework for Elixir.
- blitzy β80 π 1915 β A simple HTTP load tester in Elixir.
- bypass β712 π 30 β Bypass provides a quick way to create a mock HTTP server with a custom plug.
- chaperon β86 π 287 β An HTTP service performance & load testing framework written in Elixir.
- chemistry β5 π 990 β Testing Framework for Elixir.
-
cobertura_cover
β10
π
2135
β
Writes a coverage.xml from
mix test --cover
file compatible with Jenkinsβ Cobertura plugin. - definject β35 π 75 β Unobtrusive dependency injector for Elixir.
- double β40 π 15 β Create stub dependencies for testing without overwriting global modules.
- ecto_it β2 π 2009 β Ecto plugin with default configuration for repos for testing different ecto plugins with databases.
- efrisby β17 π 1446 β A REST API testing framework for erlang.
- elixir-auto-test β1 π 822 β Run test when file is saved using inotify-tools.
- espec β722 π 67 β BDD test framework for Elixir inspired by RSpec.
- espec_phoenix β124 π 628 β ESpec for Phoenix web framework.
- ex_machina β1545 π 28 β Flexible test factories for Elixir. Works out of the box with Ecto and Ecto associations.
- ex_parameterized β22 π 67 β Simple macro for parameterized testing.
- ex_spec β94 π 960 β BDD-like syntax for ExUnit.
- ex_unit_fixtures β11 π 609 β A library for defining modular dependencies for ExUnit tests.
- ex_unit_notifier β107 π 34 β Desktop notifications for ExUnit.
- excheck β308 π 850 β Property-based testing library for Elixir (QuickCheck style).
- exkorpion β29 π 989 β A BDD library for Elixir developers.
- factory_girl_elixir β40 π 2060 β Minimal implementation of Rubyβs factory_girl in Elixir.
- fake_server β64 π 440 β FakeServer is an HTTP server that simulates response and makes testing external APIs easier.
- faker β656 π 48 β Faker is a pure Elixir library for generating fake data.
- faker_elixir β143 π 1266 β FakerElixir is an Elixir package that generates fake data for you.
- fqc β1 π 2021 β FiFo Quickcheck helper, a set of helpers for running EQC.
- gimei β2 π 1868 β Gimei is a pure Elixir library for generating Japanese fake data.
- hound β1263 π 107 β Elixir library for writing integration tests and browser automation.
- hypermock β24 π 2003 β HTTP request stubbing and expectation Elixir library.
-
ignorant
β11
π
1610
β
Partial
Map
comparison that ensures fields are present while ignoring their values. - katt β68 π 488 β KATT (Klarna API Testing Tool) is an HTTP-based API testing tool for Erlang.
- kovacs β5 π 1018 β A simple ExUnit test runner.
- markdown_test β3 π 413 β A library that lets you test the Elixir code in your markdown files.
- meck β708 π 1 β A mocking library for Erlang.
- mecks_unit β42 π 277 β A package to elegantly mock module functions within (asynchronous) ExUnit tests using meck.
- mix_erlang_tasks β18 π 2133 β Common tasks for Erlang projects that use Mix.
- mix_eunit β11 π 1444 β A Mix task to execute eunit tests.
- mix_test_watch β709 π 431 β Automatically run your Elixir projectβs tests each time you save a file.
- mixunit β2 π 2080 β An EUnit task for Mix based projects.
- mock β507 π 71 β Mocking library for the Elixir language.
- mockery β75 π 111 β Simple mocking library for asynchronous testing.
- mockingbird β3 π 994 β A set of helpers to test code that involves http requests.
- mox β831 π 36 β Mocks and explicit contracts for Elixir.
- pavlov β129 π 1813 β BDD framework for your Elixir projects.
- plug_test_helpers β8 π 2244 β A simple testing DSL for Plugs.
- ponos β144 π 1887 β Ponos is an Erlang application that exposes a flexible load generator API.
- power_assert β201 π 18 β Power Assert in Elixir. Shows evaluation results each expression.
- proper β786 π 35 β PropEr (PROPerty-based testing tool for ERlang) is a QuickCheck-inspired open-source property-based testing tool for Erlang.
- setup_tag β2 π 1681 β Easily mix and match functions marked with tags to setup your test context.
- shouldi β135 π 1655 β Elixir testing libraries with nested contexts, superior readability, and ease of use.
- test_selector β11 π 317 β A set of test helpers that make sure you always select the right elements in your Phoenix app.
- test_that_json β9 π 980 β JSON assertions and helpers for your Elixir testing needs.
- tuco_tuco β60 π 1858 β TucoTuco helps you test your web application by running a web browser and simulating user interaction with your application.
- Walkman β47 π 448 β Isolate tests from the real world, inspired by Rubyβs VCR.
- wallaby β1105 π 29 β Wallaby helps test your web applications by simulating user interactions concurrently and manages browsers.
- white_bread β198 π 78 β Story based BDD in Elixir using the gherkin syntax.
Text and Numbers
Libraries for parsing and manipulating text and numbers.
- abacus β40 π 961 β Evaluate math terms in Elixir.
- base58 β14 π 45 β Base58 encoding/decoding for Elixir.
- base58check β14 π 682 β Base58Check encoding/decoding for Bitcoin.
- base62 β17 π 52 β Base62 encoder/decoder in pure Elixir.
- bencode β15 π 1425 β 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.
- bencoder β4 π 2081 β bencode in Elixir.
- brcpfcnpj β40 π 10 β Number format and Validation for Brazilian documents (CPF/CNPJ).
- caustic β2 π 498 β Elixir cryptocurrency library for Bitcoin, Ethereum, and other blockchains. Includes cryptography, number theory (prime, congruence), and general mathematics library for exploratory math.
- ccc β4 π 2013 β Character Code Converter.
- chinese_translation β86 π 1171 β Translate between traditional chinese and simplified chinese based on wikipedia data, and translate chinese words/characters to pinyin (or slug with or without tone).
- cidr β28 π 135 β Classless Inter-Domain Routing (CIDR) for Elixir.
- cirru_parser β0 π 2041 β Cirru Parser in Elixir.
- colorful β2 π 2174 β Elixir macros to decorate characters on CUI.
- colors β7 π 1351 β Colors util written in Elixir.
- convertat β12 π 1843 β An Elixir library for converting from and to arbitrary bases.
- curtail β28 π 27 β HTML tag-safe string truncation.
- custom_base β17 π 52 β Allow you to make custom base conversion in Elixir.
- decimal β340 π 35 β Arbitrary precision decimal arithmetic for Elixir.
- dicer β3 π 2069 β A dice roller expression evaluator.
- eden β19 π 81 β EDN encoder/decoder for Elixir.
- elixilorem β8 π 785 β Lorem Ipsum generator for Elixir.
- elixir-range-extras β7 π 1872 β Elixir range utilities: constant-time random sampling and set operations.
- elixir_bencode β8 π 2073 β Bencode implemented in Elixir.
- erldn β27 π 784 β EDN format parser for the Erlang platform.
- event_source_encoder β4 π 2040 β Encode data into EventSource compliant data.
- ex_brace_expansion β4 π 2116 β Brace expansion, as known from sh/bash, in Elixir.
- ex_cldr β156 π 5 β Cldr is an Elixir library for the Unicode Consortiumβs Common Locale Data Repository (CLDR).
- ex_rfc3966 β1 π 1460 β Elixir Tel URI parser compatible with RFC3966.
- ex_rfc3986 β10 π 1460 β RFC3986 URI/URL parser.
- ex_uc β18 π 1089 β Extensible Units Converter for Elixir.
- exmoji β78 π 218 β Emoji encoding Swiss Army knife for Elixir/Erlang.
- expletive β24 π 1373 β Profanity filter library for Elixir.
- expr β10 π 1695 β An Elixir library for parsing and evaluating mathematical expressions.
- faust β24 π 1766 β Markov Text Generator for Elixir.
- haikunator β24 π 1613 β Generate Heroku-like memorable random names to use in your apps or anywhere else.
- hashids β214 π 751 β Hashids lets you obfuscate numerical identifiers via reversible mapping.
- hexate β24 π 141 β Simple module for Hex encoding / decoding in Elixir.
- inet_cidr β30 π 875 β Classless Inter-Domain Routing (CIDR) for Elixir that is compatible with :inet and supports both IPv4 and IPv6.
- inflex β312 π 206 β An Inflector library for Elixir.
- kitsune β11 π 2221 β An Elixir library for transforming the representation of data.
- ltsvex β10 π 1957 β LTSV parser implementation in Elixir.
- mbcs β23 π 55 β Wrapper for erlang-mbcs. This module provides functions for character encoding conversion.
- mimetype_parser β3 π 1258 β parse mimetypes.
- monetized β46 π 1184 β A lightweight solution for handling and storing money.
- money β494 π 24 β Working with Money safer, easier, and fun, interpretation of the Fowlerβs Money pattern.
- mt940 β6 π 1516 β MT940 (standard structured SWIFT Customer Statement message) parser for Elixir.
- nanoid β138 π 1 β Elixir port of NanoID, a secure and URL-friendly unique ID generator.
- neotomex β63 π 342 β A PEG implementation with a pleasant Elixir DSL.
- number β179 π 5 β Number is a pretentiously-named Elixir library which provides functions to convert numbers into a variety of different formats.
- numero β5 π 772 β A micro library for converting non-english utf-8 digits in elixir.
- palette β1 π 2104 β A handy library for colouring strings in Elixir.
- pinyin β16 π 1351 β Chinese Pinyin lib for Elixir.
- porterstemmer β5 π 2142 β Porter Stemmer in Elixir.
- pretty_hex β4 π 2266 β A binary hex dumping library in Elixir.
- quickrand β36 π 19 β Quick Random Number Generation.
- RandomStringGenerator β1 π 567 β A module to generate a random string based on a given string pattern.
- ref_inspector β11 π 14 β Referer parser library in Elixir. Fetching info from URLs.
- remove_emoji β5 π 221 β Emoji text sanitizer in Elixir. It can remove any emoji symbol.
- secure_random β94 π 1461 β Convenience library for random base64 strings modeled after my love for Rubyβs SecureRandom.
- sentient β33 π 1898 β Simple sentiment analysis based on the AFINN-111 wordlist.
- shortuuid β26 π 271 β Generate concise, unambiguous, URL-safe UUIDs.
- simetric β60 π 1085 β String similarity metrics for Elixir.
- slugger β148 π 954 β Slugger can generate slugs from given strings that can be used in URLs or file names.
- smile β3 π 1507 β Small lib for converting emoji mappers to emoji characters, like in Slack messages.
- stemmer β134 π 1271 β An English (Porter2) stemming implementation in Elixir.
- tau β3 π 1888 β Provide the famous mathematical constant, tau, Ο = 6.2831β¦.
- tomlex β32 π 911 β A TOML parser for Elixir.
-
ua_inspector
β82
π
1
β
User agent parser library like
piwik/device-detector
. - ua_parser2 β1 π 1660 β A port of ua-parser2 to Elixir. User agent parser library.
- unit_fun β19 π 862 β Attempt to add units to numbers in elixir to give some added type safety when dealing with numeric quantities.
- uuid β313 π 455 β UUID generator and utilities for Elixir.
- uuid_erl β186 π 56 β Erlang Native UUID Generation.
- veritaserum β66 π 345 β Sentiment analysis based on afinn-165, emojis and some enhancements.
Third Party APIs
Libraries for accessing third party APIs.
- airbax β6 π 1037 β Exception tracking from Elixir to Airbrake.
- airbrake β24 π 483 β An Elixir notifier for the Airbrake.
- airbrakex β26 π 112 β Elixir client for the Airbrake service.
- amazon_product_advertising_client β33 π 876 β Amazon Product Advertising API client for Elixir.
- apns β69 π 1340 β Apple Push Notifications Service client library for elixir.
- asanaficator β2 π 2029 β Simple Elixir wrapper for the Asana API. Based on Tentacat.
- askimet_ex β7 π 208 β Elixir client for Askimet Anti-Spam service.
- assembla_api β0 π 1102 β Assembla API client for Elixir.
- balalaika_bear β11 π 999 β Simple VK API client for Elixir.
- balanced β2 π 2234 β Balanced API Client for Elixir.
- bandwidth β3 π 846 β An Elixir client library for the Bandwidth Application Platform.
- bing_translator β9 π 984 β A simple Elixir interface to Bingβs translation API.
- bitmex β8 π 704 β BitMEX client library for Elixir.
- bitpay β30 π 1948 β Elixir core library for connecting to bitpay.com.
- cashier β36 π 1065 β Payment gateway offering a common interface into multiple payment providers.
- cleverbot β3 π 2214 β Simple implementation of the Cleverbot API in Elixir.
- coinbase β9 π 2002 β A unofficial Coinbase API v1 Client.
- commerce_billing β167 π 1527 β A payment-processing library for Elixir that supports multiple gateways (e.g. Bogus & Stripe).
- conekta β14 π 123 β Elixir wrapper for Conekta API.
- correios_cep β35 π 180 β Find Brazilian addresses by zip code, directly from Correios database. No HTML parsers.
- currently β4 π 1879 β A tool to display cards currently assigns on Trello.
- darkskyx β13 π 284 β A Darksky.com (formerly forecast.io) API client for Elixir.
- digitalocean β12 π 1630 β Elixir wrapper for the Digital Ocean API v2.
- digoc β12 π 2171 β Digital Ocean API v2 Elixir Client.
- diplomat β85 π 216 β A Google Cloud Datastore client.
- dnsimple β42 π 9 β Elixir client for the DNSimple API v2.
- docker β16 π 1991 β Elixir client for the Docker Remote API.
- dockerex β19 π 1263 β Lightweight Docker Remote API Client with SSL/TLS login/connection support.
- dogstatsd β37 π 1374 β An Elixir client for DogStatsd.
- dpd_client β1 π 1907 β An API client for the DPD service.
- dropbox β12 π 2325 β Dropbox Core API client for Elixir.
- dublin_bus_api β1 π 324 β Access to the Real Time Passenger Information (RTPI) for Dublin Bus services.
- edgarex β1 π 2153 β Elixir interface for fetching SEC filings from EDGAR.
- elixir_authorizenet β9 π 1453 β Unofficial client for the Authorize.Net merchant API.
- elixir_ipfs_api β37 π 1008 β IPFS (InterPlanetary File System) API client for Elixir.
- elixirfm β7 π 141 β Last.fm API wrapper for Elixir.
- elixtagram β79 π 373 β Instagram API client for Elixir.
- ethereumex β221 π 25 β Elixir JSON-RPC client for the Ethereum blockchain.
- everex β10 π 946 β Evernote API client for Elixir.
- everyoneapi β1 π 2165 β API Client for EveryoneAPI.com.
- ex_changerate β2 π 215 β Elixir client for exchangerate.host API.
- ex_codeship β0 π 1562 β API Client for Codeship.
- ex_statsd β97 π 1015 β A statsd client implementation for Elixir.
- ex_twilio β279 π 62 β Twilio API client for Elixir.
- ex_twiml β33 π 1265 β Generate TwiML for your Twilio integration, right inside Elixir.
- exdesk β4 π 1044 β Elixir library for the Desk.com API.
- exfacebook β18 π 1276 β Facebook API, written in Elixir using similar methods like Ruby koala gem.
- exgenius β1 π 1934 β Elixir library for the (undocumented) Rap Genius API.
- exgravatar β17 π 350 β An Elixir module for generating Gravatar URLs.
- exgrid β7 π 1194 β interact with Sendgridβs API.
- exjira β6 π 2168 β JIRA client library for Elixir.
- exlingr β1 π 2239 β A Lingr client module.
- explay β16 π 1328 β Unofficial Google Play API in Elixir.
- exstagram β12 π 1806 β Elixir library for Instagram v1 API.
- extwitter β367 π 59 β Twitter client library for Elixir.
- exurban β1 π 2242 β Elixir wrapper for UrbanAirship API.
- facebook β130 π 391 β Facebook Graph API Wrapper written in Elixir.
- feedlex β3 π 2037 β Feedly RSS reader client for Elixir.
- fluent_client β6 π 2210 β Minimalistic fluentd client.
- forcex β50 π 462 β Elixir library for the Force.com REST API.
- forecast_io β7 π 1274 β Simple wrapper for Forecast.IO API.
- gcmex β8 π 1928 β Google Cloud Messaging client library for elixir.
- google-cloud β543 π 1 β This repository contains all the client libraries to interact with Google APIs.
- google_sheets β36 π 792 β Elixir library for fetching and polling Google spreadsheet data in CSV format.
- govtrack β3 π 1530 β A simple Elixir wrapper for the govtrack.us API.
- gringotts β385 π 275 β A complete payment library for Elixir and Phoenix Framework similar to ActiveMerchant from the Ruby world.
- hexoku β7 π 2281 β Heroku API client and Heroku Mix tasks for Elixir projects.
- honeywell β0 π 1618 β A client for the Honeywell Lyric, Round and Water Leak & Freeze Detector APIs.
- kane β77 π 308 β A Google Cloud Pub/Sub client.
- keenex β28 π 818 β A Keen.io API Client.
- link_shrinkex β8 π 2306 β Elixir library for creating short URLs using Googleβs URL Shortener API.
- m2x β5 π 1371 β 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).
- mailchimp β40 π 14 β A basic Elixir wrapper for version 3 of the MailChimp API.
- mailgun β187 π 1777 β Elixir Mailgun Client.
- mandrill β50 π 1742 β A Mandrill wrapper for Elixir.
- marvel β9 π 2079 β CLI and Elixir API Client for the Marvel API.
- mexpanel β2 π 563 β An Elixir client for the Mixpanel HTTP API.
- mixpanel β6 π 2200 β An Elixir client for the Mixpanel HTTP API.
- mixpanel_data_client β3 π 2003 β Client for interacting with the Mixpanel Data Export API.
- mmExchangeRate β0 π 2109 β A simple exchange rate checker and calculator based on Central Bank of Myanmar Api.
- nadia β316 π 23 β Telegram Bot API Wrapper written in Elixir.
- omise β3 π 1594 β Omise client library for Elixir.
- opbeat β7 π 1415 β Elixir client for Opbeat.
- pagexduty β6 π 2061 β A Pagerduty client for Elixir.
- parse_client β4 π 2029 β Elixir client for the parse.com REST API.
- parsex β1 π 2331 β ParsEx is an Elixir HTTP Client for communicating with Parse.comβs Restful API.
- particle β4 π 603 β An Elixir client for the Particle IoT platformβs HTTP API.
- pathway β3 π 2268 β An Erlang/Elixir client for the Trak.io REST API.
- pay β26 π 1216 β An Elixir Lib to deal with Paypal and other payment solutions.
- pay_pal β30 π 771 β Elixir library for working with the PayPal REST API.
- pigeon β473 π 11 β HTTP2-compliant wrapper for sending iOS and Android push notifications.
- pocketex β6 π 2132 β Pocketex is an Elixir client for the Pocket read later service getpocket.com.
- pusher β15 π 472 β Elixir library to access the Pusher REST API.
- qiita_ex β6 π 2221 β A Qiita API v2 Interface for Elixir.
- qiniu β60 π 393 β Qiniu SDK for Elixir.
- random_user β6 π 1075 β An Elixir client for randomuser.me API.
- reap β3 π 2278 β Reap is a simple Elixir library for working with the refheap API.
- reddhl β4 π 1901 β An headline and link puller for Reddit and its various subreddits.
- redtube β7 π 2086 β Redtube API Wrapper written in Elixir.
- reporter β4 π 1278 β Reporter is simple reporting App reviews library. Support AppStore and GooglePlay.
- riemann β55 π 884 β A Riemann client for Elixir.
- rs_twitter β2 π 584 β Low Level Twitter Client for Elixir.
- semver β2 π 2013 β Utilities for working with semver.org-compliant version strings.
- sendgrid β75 π 75 β Send composable, transactional emails with SendGrid.
- shopify β85 π 409 β Easily access the Shopify API.
- sift_ex β14 π 1554 β A Siftscience API Library for Elixir.
- simplex β3 π 1675 β An Elixir library for interacting with the Amazon SimpleDB API.
- slack β580 π 64 β Slack real time messaging client in Elixir.
- sparkpost β43 π 814 β An Elixir library for sending email using SparkPost.
- statix β227 π 269 β Expose app metrics in the StatsD protocol.
- stripe β20 π 2237 β An Elixir Library wrapping Stripeβs API.
- stripity_stripe β578 π 6 β An Elixir Library for Stripe.
- tagplay β0 π 2185 β Elixir client for Tagplay API.
- telegex β30 π 27 β Telegram bot library for Elixir.
- telephonist β38 π 1741 β Elixir state machines for Twilio calls.
- tentacat β383 π 96 β Simple Elixir wrapper for the GitHub API.
- tg_client β11 π 1584 β An Elixir wrapper which communicates with the Telegram-CLI.
- traitify_elixir β1 π 2278 β An Elixir client library for the Traitify Developerβs API.
- ui_faces β1 π 1075 β UIFaces API client for Elixir applications.
- unsplash-elixir β13 π 432 β An Elixir library for Unsplash.
- vultr β2 π 247 β Simple wrapper for the Vultr API.
- xe β21 π 1755 β Real time conversion for currencies.
- zanox β1 π 1872 β Zanox API.
Translations and Internationalizations
Libraries providing translations or internationalizations.
- exkanji β10 π 984 β A Elixir library for translating between hiragana, katakana, romaji and kanji. It uses Mecab.
- exromaji β8 π 984 β A Elixir library for translating between hiragana, katakana and romaji.
- getatrex β5 π 136 β Automatic translation tool of Gettext locales with Google Translate for Elixir/Phoenix projects.
- gettext β283 π 34 β Internationalization and localization support for Elixir.
- linguist β160 π 238 β Elixir Internationalization library. Beware that it looks abandoned: its tests fail on Elixir >= 1.7 and its last commit was on 2015.
- parabaikElixirConverter β2 π 2107 β ParabaikElixirConverter is just a Elixir version of Parabaik converter. It can convert from Unicode to Zawgyi-One and Zawgyi-One to Unicode vice versa.
- trans β168 π 124 β A Elixir library to manage embedded translations into models leveraging PostgreSQL JSONB datatype.
Utilities
Utilities libraries.
- ar2ecto β12 π 2055 β Ar2ecto is a set of mix tasks to help you migrate from ActiveRecord to Ecto.
- async_with β136 π 70 β A modifier for Elixirβs βwithβ to execute all its clauses in parallel.
- crutches β124 π 1217 β Utility library for Elixir, designed to complement the standard library bundled with the language.
- deppie β7 π 836 β Elixirβs coolest deprecation logger.
- dot-notes β6 π 1701 β Simple dot/bracket notation parsing/conversion for Maps/Lists.
- dress β55 π 1136 β Cli app that makes your stdout fancy.
- erlang-history β495 π 1056 β Hacks to add shell history to Erlangβs shell.
- erlsh β58 π 1381 β Family of functions and ports involving interacting with the system shell, paths and external programs.
- erlware_commons β202 π 17 β Additional standard library for Erlang.
- ex_progress β2 π 550 β A library for tracking progress across many tasks and sub-tasks.
- exjprop β0 π 543 β Elixir library for reading Java properties files from various sources.
- fitex β1 π 1966 β FitEx is a Macro-Module which provides a bit of sugar for function definitions.
-
global
β2
π
2045
β
Wrapper of the Erlang
:global
module. - mandrake β7 π 1866 β Mandrake is a functional programming library that bring something else magic in elixir.
- mnemonix β32 π 1103 β A unified interface to key/value stores.
- plasm β80 π 226 β Plasm is Ectoβs composable query multitool, containing higher-level functions such as .count, .random, .first, .last, .find, .inserted_before, .inserted_after, etc.
- pubsub β58 π 25 β A Publish-Subscribe utility library that implements a pub-sub mechanism to ease the burden of communication on the business logic processes.
- quark β277 π 563 β A library for common functional programming idioms: combinators, currying, and partial application.
- retry β305 π 99 β Simple Elixir macros for linear retry, exponential backoff and wait with composable delays.
- sips_downloader β14 π 1517 β Elixir module for downloading the ElixirSips episodes and all other files.
- sitemap β92 π 780 β Sitemap is the easiest way to generate Sitemaps in Elixir.
- uef-lib β9 π 249 β 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).
- vert.x β14 π 675 β Elixir event bus bridge to Vert.x services using TCP socket.
Validations
Libraries and implementations for validation of data.
- bankster β23 π 531 β A IBAN account number and BIC validation library for Elixir.
- ex_gtin β9 π 365 β A validation library for GTIN codes under GS1 specification.
- ex_nric β2 π 680 β Validation for Singapore National Registration Identity Card numbers (NRIC).
- exop β180 π 77 β A library that allows to encapsulate business logic and validate params with predefined contract.
- form β31 π 32 β Document forms and validation library.
- is β16 π 943 β Fast, extensible and easy to use data structure validation for elixir with nested structures support.
- jeaux β12 π 1443 β A light and easy schema validator.
- optimal β33 π 324 β A schema based keyword list option validator.
- shape β6 π 2037 β A data validation library for Elixir based on Prismatic Scheme.
- skooma β117 π 106 β Simple data validation library for describing and validating data structures.
- uk_postcode β9 π 45 β UK postcode parsing and validation library.
- vex β498 π 77 β An extensible data validation library for Elixir.
- voorhees β43 π 2086 β A library for validating JSON responses.
Version Control
Working with version control like git, mercury, subversion β¦
- gitex β54 π 129 β 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.
- ffmpex β131 π 196 β FFmpeg command line wrapper.
- silent_video β10 π 196 β Convert GIFs and videos to silent videos, optimized for mobile playback.
WebAssembly
Libraries for running WebAssembly (WASM) in Elixir or running Elixir on WebAssembly.
- lumen β2337 π 12 β An alternative BEAM implementation, designed for WebAssembly.
XML
Libraries and implementations working with XML (for html tools please go to the HTML section).
- elixir-map-to-xml β1 π 186 β Converts an Elixir map to an XML document.
- elixir-xml-to-map β27 π 22 β Creates an Elixir Map data structure from an XML string.
- erlsom β242 π 96 β Erlsom is an Erlang library to parse (and generate) XML documents.
- exmerl β11 π 1459 β Elixir wrapper for xmerl.
- exml β21 π 694 β Most simple Elixir wrapper for xmerl xpath.
- exoml β7 π 294 β A module to decode/encode xml into a tree structure.
- fast_xml β111 π 44 β Fast Expat based Erlang XML parsing library.
- meeseeks β250 π 79 β A library for parsing and extracting data from HTML and XML with CSS or XPath selectors.
- quinn β43 π 727 β XML parser for Elixir.
- saxy β189 π 17 β Saxy is an XML parser and encoder in Elixir that focuses on speed and standard compliance.
- sweet_xml β271 π 698 β Query XML simply and effectively.
- xml_builder β130 π 58 β Elixir library for generating xml.
- xmlrpc β34 π 506 β Library for encoding and decoding XML-RPC for clients and servers.
YAML
Libraries and implementations working with YAML.
- fast_yaml β37 π 22 β Fast YAML is an Erlang wrapper for libyaml βCβ library.
- yamerl β172 π 15 β YAML 1.2 parser in Erlang.
- yaml_elixir β116 π 182 β Yaml parser for Elixir based on native Erlang implementation.
- ymlr β4 π 24 β A YAML encoder for Elixir.
- yomel β6 π 1837 β libyaml interface for Elixir.