{"name":"Elixir","children":[{"name":"Actors","children":[{"url":"https://github.com/sasa1977/exactor","size":1,"name":"exactor","description":"Helpers for easier implementation of actors in Elixir."},{"url":"https://github.com/awetzel/exos","size":1,"name":"exos","description":"A Port Wrapper which forwards cast and call to a linked Port."},{"url":"https://github.com/tattdcodemonkey/mon_handler","size":1,"name":"mon_handler","description":"A minimal GenServer that monitors a given GenEvent handler."},{"url":"https://github.com/camshaft/pool_ring","size":1,"name":"pool_ring","description":"Create a pool based on a hash ring."},{"url":"https://github.com/devinus/poolboy","size":1,"name":"poolboy","description":"A hunky Erlang worker pool factory."},{"url":"https://github.com/seth/pooler","size":1,"name":"pooler","description":"An OTP Process Pool Application."},{"url":"https://github.com/fishcakez/sbroker","size":1,"name":"sbroker","description":"Sojourn-time based active queue management library."},{"url":"https://github.com/sasa1977/workex","size":1,"name":"workex","description":"Backpressure and flow control in EVM processes."}]},{"name":"Algorithms and Data structures","children":[{"url":"https://github.com/takscape/elixir-array","size":1,"name":"array","description":"An Elixir wrapper library for Erlang's array."},{"url":"https://github.com/hashd/bitmap-elixir","size":1,"name":"bitmap","description":"Pure Elixir implementation of [bitmaps](https://en.wikipedia.org/wiki/Bitmap)."},{"url":"https://github.com/joekain/BlockingQueue","size":1,"name":"blocking_queue","description":"BlockingQueue is a simple queue implemented as a GenServer. It has a fixed maximum length established when it is created."},{"url":"https://github.com/gmcabrita/bloomex","size":1,"name":"bloomex","description":"A pure Elixir implementation of Scalable Bloom Filters."},{"url":"https://github.com/camshaft/count_buffer","size":1,"name":"count_buffer","description":"Buffer a large set of counters and flush periodically."},{"url":"https://github.com/gmcabrita/cuckoo","size":1,"name":"cuckoo","description":"A pure Elixir implementation of [Cuckoo Filters](https://www.cs.cmu.edu/%7Edga/papers/cuckoo-conext2014.pdf)."},{"url":"https://github.com/duailibe/cuid","size":1,"name":"cuid","description":"Collision-resistant ids optimized for horizontal scaling and sequential lookup performance, written in Elixir."},{"url":"https://github.com/meh/elixir-datastructures","size":1,"name":"datastructures","description":"A collection of protocols, implementations and wrappers to work with data structures."},{"url":"https://github.com/stocks29/dlist","size":1,"name":"dlist","description":"Deque implementations in Elixir."},{"url":"https://github.com/herenowcoder/eastar","size":1,"name":"eastar","description":"A* graph pathfinding in pure Elixir."},{"url":"https://github.com/tobz/elistrix","size":1,"name":"elistrix","description":"A latency / fault tolerance library to help isolate your applications from an uncertain world of slow or failed services."},{"url":"https://github.com/awetzel/exfsm","size":1,"name":"exfsm","description":"Simple elixir library to define a static FSM."},{"url":"https://github.com/rozap/exkad","size":1,"name":"exkad","description":"A [kademlia](https://en.wikipedia.org/wiki/Kademlia) implementation in Elixir."},{"url":"https://github.com/a115/exmatrix","size":1,"name":"exmatrix","description":"ExMatrix is a small library for working with matrices, originally developed for testing matrix multiplication in parallel."},{"url":"https://github.com/stocks29/ezcryptex","size":1,"name":"ezcryptex","description":"Thin layer on top of Cryptex."},{"url":"https://github.com/asaaki/fnv.ex","size":1,"name":"fnv","description":"Pure Elixir implementation of Fowler–Noll–Vo hash functions."},{"url":"https://github.com/sasa1977/fsm","size":1,"name":"fsm","description":"Finite state machine as a functional data structure."},{"url":"https://github.com/jlouis/fuse","size":1,"name":"fuse","description":"This application implements a so-called circuit-breaker for Erlang."},{"url":"https://github.com/crertel/graphmath","size":1,"name":"graphmath","description":"An Elixir library for performing 2D and 3D mathematics."},{"url":"https://github.com/reset/hash-ring-ex","size":1,"name":"hash_ring_ex","description":"A consistent hash-ring implemention for Elixir."},{"url":"https://github.com/arianvp/elixir-isaac","size":1,"name":"isaac","description":"Isaac is an elixir module for ISAAC: a fast cryptographic random number generator."},{"url":"https://github.com/okeuday/key2value","size":1,"name":"key2value","description":"Erlang 2-way Set Associative Map."},{"url":"https://github.com/pma/lfsr","size":1,"name":"lfsr","description":"Elixir implementation of a binary Galois Linear Feedback Shift Register."},{"url":"https://github.com/asonge/loom","size":1,"name":"loom","description":"A CRDT library with δ-CRDT support."},{"url":"https://github.com/szktty/erlang-lz4","size":1,"name":"lz4","description":"LZ4 bindings for Erlang for fast data compressing."},{"url":"https://github.com/os6sense/DefMemo","size":1,"name":"memoize","description":"A memoization macro (defmemo) for elixir using a genserver backing store."},{"url":"https://github.com/rob-brown/MonadEx","size":1,"name":"monadex","description":"Upgrade your Elixir pipelines with monads."},{"url":"https://github.com/gmcabrita/murmur","size":1,"name":"murmur","description":"A pure Elixir implementation of the non-cryptographic hash Murmur3."},{"url":"https://github.com/DanCouper/natural_sort","size":1,"name":"natural_sort","description":"Elixir natural sort implementation for lists of strings."},{"url":"https://github.com/StevenJL/parex","size":1,"name":"parex","description":"Parallel Execute (Parex) is an Elixir module for executing multiple (slow) processes in parallel."},{"url":"https://github.com/SenecaSystems/red_black_tree","size":1,"name":"red_black_tree","description":"Red-Black tree implementation in Elixir."},{"url":"https://github.com/stavro/remodel","size":1,"name":"remodel","description":"An Elixir presenter package used to transform map structures."},{"url":"https://github.com/Puddah/Rendezvous","size":1,"name":"rendezvous","description":"Implementation of the Rendezvous or Highest Random Weight (HRW) hashing algorithm in Elixir."},{"url":"https://github.com/jj1bdx/sfmt-erlang/","size":1,"name":"sfmt","description":"SIMD-oriented Fast Mersenne Twister (SFMT) for Erlang."},{"url":"https://github.com/SenecaSystems/sorted_set","size":1,"name":"sorted_set","description":"Sorted Sets for Elixir."},{"url":"https://github.com/hamiltop/structurez","size":1,"name":"structurez","description":"A playground for data structures in Elixir."},{"url":"https://github.com/edubkendo/supermemo","size":1,"name":"supermemo","description":"An Elixir implementation of the [Supermemo 2 algorithm](http://www.supermemo.com/english/ol/sm2.htm)."},{"url":"https://github.com/OCannings/tf-idf","size":1,"name":"tfidf","description":"An Elixir implementation of term frequency–inverse document frequency."},{"url":"https://github.com/smashedtoatoms/the_fuzz","size":1,"name":"the_fuzz","description":"Fuzzy string-matching algorithm implementations."},{"url":"https://github.com/jj1bdx/tinymt-erlang/","size":1,"name":"tinymt","description":"Tiny Mersenne Twister (TinyMT) for Erlang."},{"url":"https://github.com/okeuday/trie","size":1,"name":"trie","description":"Erlang Trie Implementation."},{"url":"https://github.com/Dkendal/zipper_tree","size":1,"name":"zipper_tree","description":"Variadic aritity tree with a zipper for Elixir."}]},{"name":"Applications","children":[{"url":"https://github.com/spawnproc/bpe","size":1,"name":"bpe","description":"Business Process Engine in Erlang."},{"url":"https://github.com/cloud8421/dragonfly-server","size":1,"name":"dragonfly_server","description":"Elixir app to serve Dragonfly images."},{"url":"https://github.com/hyperledger/hyperledger-server","size":1,"name":"hyperledger","description":"Reference server for the Hyperledger protocol."},{"url":"https://bitbucket.org/Anwen/majremind","size":1,"name":"majremind","description":"A self-maintained database of your updated server which tells you which one needs to be updated. ."},{"url":"https://github.com/5HT/n2o","size":1,"name":"n2o","description":"WebSocket Application Server."},{"url":"https://github.com/edgurgel/poxa","size":1,"name":"poxa","description":"Open Pusher implementation, compatible with Pusher libraries."},{"url":"https://github.com/lexmag/tty2048","size":1,"name":"tty2048","description":"Terminal-based 2048 game written in Elixir."}]},{"name":"Audio and Sounds","children":[{"url":"https://github.com/asonge/erlaudio","size":1,"name":"erlaudio","description":"Erlang PortAudio bindings."}]},{"name":"Authentication","children":[{"url":"https://github.com/zmoshansky/aeacus","size":1,"name":"aeacus","description":"A simple configurable identity/password authentication module (Compatible with Ecto/Phoenix)."},{"url":"https://github.com/kevinmontuori/Apache.PasswdMD5","size":1,"name":"apache_passwd_md5","description":"Apache/APR Style Password Hashing."},{"url":"https://github.com/bryanjos/aws_auth","size":1,"name":"aws_auth","description":"AWS Signature Version 4 Signing Library for Elixir."},{"url":"https://github.com/lidashuang/github_oauth","size":1,"name":"github_oauth","description":"A simple github oauth library."},{"url":"https://github.com/hassox/guardian","size":1,"name":"guardian","description":"An authentication framework for use with Elixir applications."},{"url":"https://github.com/kevinmontuori/Apache.htpasswd","size":1,"name":"htpasswd","description":"Apache httpasswd file reader/writer in Elixir."},{"url":"https://github.com/mojolingo/mojo-auth.ex","size":1,"name":"mojoauth","description":"MojoAuth implementation in Elixir."},{"url":"https://github.com/scrogson/oauth2","size":1,"name":"oauth2","description":"An OAuth 2.0 client library for Elixir."},{"url":"https://github.com/mgamini/oauth2cli-elixir","size":1,"name":"oauth2cli","description":"Simple OAuth2 client written for Elixir."},{"url":"https://github.com/parroty/oauth2ex","size":1,"name":"oauth2ex","description":"Another OAuth 2.0 client library for Elixir."},{"url":"https://github.com/lexmag/oauther","size":1,"name":"oauther","description":"An OAuth 1.0 implementation for Elixir."},{"url":"https://github.com/elixircnx/openmaize","size":1,"name":"openmaize","description":"Authentication and authorization library for Elixir."},{"url":"https://github.com/craigp/elixir_xoauth2","size":1,"name":"xoauth2","description":"A simple XOAuth2 module for Elixir."}]},{"name":"Authorization","children":[{"url":"https://github.com/cpjk/canary","size":1,"name":"canary","description":"An authorization library for Elixir applications that restricts what resources the current user is allowed to access."},{"url":"https://github.com/elixircnx/openmaize","size":1,"name":"openmaize","description":"Authentication and authorization library for Elixir."}]},{"name":"Behaviours and Interfaces","children":[{"url":"https://github.com/fishcakez/connection","size":1,"name":"connection","description":"Connection behaviour for connection processes. The API is superset of the GenServer API."}]},{"name":"Bittorrent","children":[{"url":"https://github.com/alehander42/tracker_request","size":1,"name":"tracker_request","description":"Dealing with bittorrent tracker requests and responses."},{"url":"https://github.com/alehander42/wire","size":1,"name":"wire","description":"Encode and decode bittorrent peer wire protocol messages with Elixir."}]},{"name":"Build Tools","children":[{"url":"https://github.com/synrc/active","size":1,"name":"active","description":"Recompilation and Reloading on FileSystem changes."},{"url":"https://github.com/HashNuke/coffee_rotor","size":1,"name":"coffee_rotor","description":"Rotor plugin to compile CoffeeScript files."},{"url":"https://github.com/jarednorman/dismake","size":1,"name":"dismake","description":"Mix compiler running make."},{"url":"https://github.com/boldpoker/edeliver","size":1,"name":"edeliver","description":"Deployment for Elixir and Erlang."},{"url":"https://github.com/camshaft/etude","size":1,"name":"etude","description":"Parallel computation coordination compiler for Erlang/Elixir."},{"url":"https://github.com/lycus/exmake","size":1,"name":"ExMake","description":"A modern, scriptable, dependency-based build tool loosely based on Make principles."},{"url":"https://github.com/liveforeverx/exscript","size":1,"name":"Exscript","description":"Elixir escript library."},{"url":"https://github.com/synrc/mad","size":1,"name":"mad","description":"Small and Fast Rebar Replacement."},{"url":"https://github.com/blt/port_compiler","size":1,"name":"pc","description":"A rebar3 port compiler."},{"url":"https://github.com/awetzel/reaxt","size":1,"name":"reaxt","description":"React template into your Elixir application for server rendering."},{"url":"https://github.com/kellymclaughlin/rebar3-eqc-plugin","size":1,"name":"rebar3_eqc","description":"A rebar3 plugin to enable the execution of Erlang QuickCheck properties."},{"url":"https://github.com/okeuday/reltool_util","size":1,"name":"reltool_util","description":"Erlang reltool utility functionality application."},{"url":"https://github.com/erlware/relx","size":1,"name":"relx","description":"A release assembler for Erlang."},{"url":"https://github.com/AgilionApps/remix","size":1,"name":"remix","description":"Automatic recompilation of Mix code on file change."},{"url":"https://github.com/HashNuke/rotor","size":1,"name":"rotor","description":"Super-simple build system for Elixir."},{"url":"https://github.com/zamith/sass_elixir","size":1,"name":"sass_elixir","description":"A sass plugin for Elixir projects."}]},{"name":"Caching","children":[{"url":"https://github.com/sasa1977/con_cache","size":1,"name":"con_cache","description":"ConCache is an ETS based key/value storage."},{"url":"https://github.com/tsharju/elixir_locker","size":1,"name":"elixir_locker","description":"Lockeris a Elixir wrapper for the locker Erlang library that provides some useful libraries that should make using locker a bit easier."},{"url":"https://github.com/wooga/locker","size":1,"name":"locker","description":"Atomic distributed \"check and set\" for short-lived keys."}]},{"name":"Cloud Infrastructure and Management","children":[{"url":"https://github.com/jkakar/aws-elixir","size":1,"name":"aws","description":"AWS clients for Elixir."},{"url":"http://cloudi.org/","size":1,"name":"Cloudi","description":"CloudI is for back-end server processing tasks that require soft-realtime transaction."},{"url":"https://github.com/undeadlabs/discovery","size":1,"name":"discovery","description":"An OTP application for auto-discovering services with Consul."},{"url":"https://github.com/gleber/erlcloud","size":1,"name":"erlcloud","description":"Cloud Computing library for Erlang (Amazon EC2, S3, SQS, SimpleDB, Mechanical Turk, ELB)."},{"url":"https://github.com/CargoSense/ex_aws","size":1,"name":"ex_aws","description":"AWS client. Currently supports DynamoDB and Kinesis."},{"url":"https://github.com/jordan0day/fleet-api.git","size":1,"name":"fleet_api","description":"A simple wrapper for the Fleet (CoreOS) API. Can be used with etcd tokens or via direct node URLs."},{"url":"https://github.com/ingerslevio/kubex","size":1,"name":"Kubex","description":"Kubernetes client and integration for Elixir, written in pure Elixir."},{"url":"https://github.com/okeuday/nodefinder","size":1,"name":"nodefinder","description":"Strategies for automatic node discovery in Erlang."},{"url":"https://github.com/seantanly/elixir-paratize","size":1,"name":"paratize","description":"Elixir library providing some handy parallel processing facilities that supports configuring number of workers and timeout."},{"url":"https://github.com/basho/sidejob","size":1,"name":"sidejob","description":"Parallel worker and capacity limiting library for Erlang."},{"url":"https://github.com/MSch/sidetask","size":1,"name":"sidetask","description":"SideTask is an alternative to Task.Supervisor using Basho's sidejob library with parallelism and capacity limiting."}]},{"name":"Code Analysis","children":[{"url":"https://github.com/nirvana/belvedere","size":1,"name":"belvedere","description":"An example of CircleCI integration with Elixir ."},{"url":"https://github.com/alfert/coverex","size":1,"name":"coverex","description":"Coverage Reports for Elixir."},{"url":"https://github.com/jeremyjh/dialyxir","size":1,"name":"dialyxir","description":"Mix tasks to simplify use of Dialyzer in Elixir projects."},{"url":"https://github.com/lpil/dogma","size":1,"name":"dogma","description":"A code style linter for Elixir, powered by shame."},{"url":"https://github.com/parroty/excoveralls","size":1,"name":"excoveralls","description":"Coverage report tool for Elixir with coveralls.io integration."},{"url":"https://github.com/parroty/exprof","size":1,"name":"exprof","description":"A simple code profiler for Elixir, using eprof."}]},{"name":"Command Line Applications","children":[{"url":"https://github.com/bennyhallett/anubis","size":1,"name":"anubis","description":"Command-Line application framework for Elixir."},{"url":"https://github.com/jcomellas/getopt","size":1,"name":"getopt","description":"Command-line options parser for Erlang."}]},{"name":"Configuration","children":[{"url":"https://github.com/easco/configparser_ex","size":1,"name":"configparser_ex","description":"A simple Elixir parser for the same kind of files that Python's configparser library handles."},{"url":"https://github.com/bitwalker/conform","size":1,"name":"conform","description":"Easy release configuration for Elixir apps."},{"url":"https://github.com/avdi/dotenv_elixir","size":1,"name":"dotenv","description":"A port of dotenv to Elixir."},{"url":"https://github.com/phoenixframework/ex_conf","size":1,"name":"ex_conf","description":"Simple Elixir Configuration Management."},{"url":"https://github.com/trestrantham/ex_figaro","size":1,"name":"figaro","description":"Simple Elixir project configuration."},{"url":"https://github.com/KamilLelonek/figaro-elixir","size":1,"name":"figaro_elixir","description":"Environmental variables manager for Elixir."}]},{"name":"Cryptography","children":[{"url":"https://github.com/rubencaro/cipher","size":1,"name":"cipher","description":"Elixir crypto library to encrypt/decrypt arbitrary binaries."},{"url":"https://github.com/elixircnx/comeonin","size":1,"name":"comeonin","description":"Password authorization (bcrypt) library for Elixir."},{"url":"https://github.com/keichan34/elixir_tea","size":1,"name":"elixir_tea","description":"TEA implementation in Elixir."},{"url":"https://github.com/rozap/exgpg","size":1,"name":"exgpg","description":"Use gpg from Elixir."},{"url":"https://github.com/yuce/pot","size":1,"name":"pot","description":"Erlang library for generating one time passwords compatible with Google Authenticator."},{"url":"https://github.com/trapped/elixir-rsa","size":1,"name":"rsa","description":"`public_key` cryptography wrapper for Elixir."},{"url":"https://github.com/keichan34/tea_crypto_erl","size":1,"name":"tea_crypto","description":"Tiny Encryption Algorithm implementation."}]},{"name":"CSV","children":[{"url":"https://github.com/meh/cesso","size":1,"name":"cesso","description":"CSV handling library for Elixir."},{"url":"https://github.com/beatrichartz/csv","size":1,"name":"csv","description":"CSV Decoding and Encoding for Elixir."},{"url":"https://github.com/jimm/csvlixir","size":1,"name":"csvlixir","description":"A CSV reading/writing application for Elixir."},{"url":"https://github.com/CargoSense/ex_csv","size":1,"name":"ex_csv","description":"CSV for Elixir."}]},{"name":"Date and Time","children":[{"url":"https://github.com/adamkittelson/block_timer","size":1,"name":"block_timer","description":"Macros to use :timer.apply_after and :timer.apply_interval with a block."},{"url":"https://github.com/lau/calendar","size":1,"name":"calendar","description":"Calendar is a date and time library for Elixir."},{"url":"https://github.com/nurugger07/chronos","size":1,"name":"chronos","description":"An Elixir date/time library."},{"url":"https://github.com/magplus/good_times","size":1,"name":"good_times","description":"Expressive and easy to use datetime functions."},{"url":"https://github.com/davebryson/elixir_milliseconds","size":1,"name":"milliseconds","description":"Simple library to work with milliseconds in Elixir."},{"url":"https://github.com/atabary/moment","size":1,"name":"moment","description":"Parse, validate, manipulate, and display dates in Elixir."},{"url":"https://github.com/c-rack/quantum-elixir","size":1,"name":"quantum","description":"Cron-like job scheduler for Elixir applications."},{"url":"https://github.com/rcdilorenzo/repeatex","size":1,"name":"repeatex","description":"Natural language parsing for repeating dates."},{"url":"https://github.com/bitwalker/timex","size":1,"name":"timex","description":"Easy to use Date and Time modules for Elixir."},{"url":"https://github.com/atabary/timex-interval","size":1,"name":"timex_interval","description":"A date/time interval library for Elixir projects, based on Timex."},{"url":"https://github.com/lau/tzdata","size":1,"name":"tzdata","description":"The timezone database in Elixir."}]},{"name":"Debugging","children":[{"url":"https://github.com/hahuang65/beaker","size":1,"name":"beaker","description":"Statistics and Metrics library for Elixir."},{"url":"https://github.com/alco/benchfella","size":1,"name":"benchfella","description":"Benchmarking tool for Elixir."},{"url":"https://github.com/joekain/bmark","size":1,"name":"bmark","description":"A benchmarking tool for Elixir."},{"url":"https://github.com/eraserewind/booter","size":1,"name":"booter","description":"Boot an Elixir application, step by step."},{"url":"https://github.com/fishcakez/dbg","size":1,"name":"dbg","description":"Distributed tracing for Elixir."},{"url":"https://github.com/proger/eflame","size":1,"name":"eflame","description":"Flame Graph profiler for Erlang."},{"url":"https://github.com/Frost/eh","size":1,"name":"eh","description":"A tool to look up Elixir documentation from the command line."},{"url":"https://github.com/massemanet/eper","size":1,"name":"eper","description":"Erlang performance and debugging tools."},{"url":"https://github.com/maarek/ether","size":1,"name":"ether","description":"Ether provides functionality to hook Elixir into the Erlang debugger."},{"url":"https://github.com/Feuerlabs/exometer","size":1,"name":"exometer","description":"Basic measurement objects and probe behavior in Erlang."},{"url":"https://github.com/liveforeverx/exrun","size":1,"name":"exrun","description":"Distributed tracing for Elixir with rate limiting and simple macro-based interface."},{"url":"https://github.com/qhool/quaff","size":1,"name":"quaff","description":"The Debug module provides a simple helper interface for running Elixir code in the erlang graphical debugger."}]},{"name":"Documentation","children":[{"url":"https://github.com/elixir-lang/ex_doc","size":1,"name":"ex_doc","description":"ExDoc is a tool to generate documentation for your Elixir projects."},{"url":"https://github.com/JonGretar/ExDocDash","size":1,"name":"ex_doc_dash","description":"Formatter for ExDoc to generate docset documentation for use in Dash.app."},{"url":"https://github.com/yesmeck/hexdocset","size":1,"name":"hexdocset","description":"Convert hex doc to Dash.app's docset format."},{"url":"http://inch-ci.org/","size":1,"name":"inch-ci","description":"Documentation badges for Ruby & Elixir."},{"url":"https://github.com/falood/maru_swagger","size":1,"name":"maru_swagger","description":"Add swagger compliant documentation to your maru API."}]},{"name":"ECMAScript","children":[{"url":"https://github.com/bryanjos/elixir-estree","size":1,"name":"estree","description":"A implementation of the SpiderMonkey Parser API in Elixir."}]},{"name":"Email","children":[{"url":"https://github.com/zmoshansky/echo","size":1,"name":"echo","description":"A meta-notification system; Echo checks notification preferences & dispatches notifications."},{"url":"https://github.com/Vagabond/gen_smtp","size":1,"name":"gen_smtp","description":"A generic Erlang SMTP server and client that can be extended via callback modules."},{"url":"https://github.com/antp/mailer","size":1,"name":"mailer","description":"A simple SMTP mailer."},{"url":"https://github.com/awetzel/mailibex","size":1,"name":"mailibex","description":"Library containing Email-related implementations in Elixir: dkim, spf, dmark, mimemail, smtp."},{"url":"https://github.com/kamilc/mailman","size":1,"name":"mailman","description":"Mailman provides a clean way of defining mailers in your Elixir applications."}]},{"name":"Encoding and Compression","children":[{"url":"https://github.com/SenecaSystems/huffman","size":1,"name":"huffman","description":"Huffman encoding and decoding in Elixir."}]},{"name":"Eventhandling","children":[{"url":"https://github.com/DeadZen/goldrush","size":1,"name":"goldrush","description":"Small, Fast event processing and monitoring for Erlang/OTP applications."},{"url":"https://github.com/alfert/reaxive","size":1,"name":"reaxive","description":"Reaxive is a reactive event handling library, inspired by [Elm](http://elm-lang.org) and Reactive Extensions."}]},{"name":"Examples and funny stuff","children":[{"url":"https://github.com/stocks29/dice","size":1,"name":"dice","description":"Roll the dice, in Elixir."},{"url":"https://github.com/Annwenn/DicksEx","size":1,"name":"dicks","description":"An Elixir client for the [Dick As A Service](http://dicks-api.herokuapp.com/) platform."},{"url":"https://github.com/elpulgardelpanda/harakiri","size":1,"name":"harakiri","description":"Help applications kill themselves."},{"url":"https://github.com/dojo-toulouse/elixir-koans","size":1,"name":"koans","description":"Learn Elixir by using elixir-koans."},{"url":"https://github.com/restartr/ex-lolcat","size":1,"name":"lolcat","description":"This is the clone of busyloop/lolcat. But, not supports animation and some features of the original."},{"url":"https://github.com/fxg42/phoenix-flux-react","size":1,"name":"phoenix-flux-react","description":"An experiment with Phoenix Channels, GenEvents, React and Flux."},{"url":"https://github.com/josevalim/portal","size":1,"name":"portal","description":"A shooting fault-tolerant doors for distributed portal data-transfer application in Elixir."},{"url":"https://gitlab.com/olhado/rollex","size":1,"name":"rollex","description":"Elixir library using a Pratt Parser algorithm to calculate dice rolls."},{"url":"https://github.com/YellowApple/Rubix","size":1,"name":"rubix","description":"A very simple (and barely-functioning) Ruby runner for Elixir."},{"url":"https://bitbucket.org/Anwen/vulvapi","size":1,"name":"vulvapi","description":"A JSON API to fetch vulvas."},{"url":"https://bitbucket.org/Anwen/vulvex","size":1,"name":"vulvex","description":"An Elixir client for the VulvAPI."},{"url":"https://github.com/tacticiankerala/elixir-weather","size":1,"name":"weather","description":"A command line weather app built using Elixir."}]},{"name":"Feeds","children":[{"url":"https://github.com/michaelnisi/feeder","size":1,"name":"feeder","description":"Parse RSS and Atom feeds."},{"url":"https://github.com/manukall/feeder_ex","size":1,"name":"feeder_ex","description":"RSS feed parser. Simple wrapper for feeder."},{"url":"https://github.com/umurgdk/elixir-feedme","size":1,"name":"feedme","description":"RSS/Atom parser built on erlang's xmerl xml parser."}]},{"name":"Files and Directories","children":[{"url":"https://github.com/stavro/arc","size":1,"name":"arc","description":"Flexible file upload and attachment library for Elixir."},{"url":"https://github.com/jquadrin/cassius","size":1,"name":"cassius","description":"Monitor Linux file system events."},{"url":"https://github.com/pragdave/dir_walker","size":1,"name":"dir_walker","description":"DirWalker lazily traverses one or more directory trees, depth first, returning successive file names."},{"url":"https://github.com/bbense/elixgrep","size":1,"name":"elixgrep","description":"A framework for doing Hadoop style Map/Reduce operations on collections of files."},{"url":"https://github.com/gniquil/ex_minimatch","size":1,"name":"ex_minimatch","description":"Globbing paths without walking the tree!."},{"url":"https://github.com/falood/exfswatch","size":1,"name":"exfswatch","description":"A file change watcher wrapper based on [fs](https://github.com/synrc/fs)."},{"url":"https://github.com/synrc/fs","size":1,"name":"fs","description":"Erlang FileSystem Listener."},{"url":"https://github.com/ricn/librex","size":1,"name":"librex","description":"Elixir library to convert office documents to other formats using LibreOffice."},{"url":"https://github.com/lowks/Radpath","size":1,"name":"Radpath","description":"Path library for Elixir, inspired by Python's Enhpath."},{"url":"https://github.com/ricn/zarex","size":1,"name":"zarex","description":"Filename sanitization for Elixir."}]},{"name":"Formulars","children":[{"url":"https://github.com/spawnproc/forms","size":1,"name":"forms","description":"Erlang Business Documents Generator."}]},{"name":"Framework Components","children":[{"url":"https://github.com/trenpixster/addict","size":1,"name":"addict","description":"User authentication for Phoenix Framework."},{"url":"https://github.com/zmoshansky/aeacus","size":1,"name":"aeacus","description":"A simple configurable identity/password authentication module (Compatible with Ecto/Phoenix)."},{"url":"https://github.com/romul/airbrake_plug","size":1,"name":"airbrake_plug","description":"Report errors in your Plug stack or whatever to Airbrake."},{"url":"https://github.com/nickgartmann/ashes","size":1,"name":"ashes","description":"A code generation tool for the Phoenix web framework."},{"url":"https://github.com/lexmag/blaguth","size":1,"name":"blaguth","description":"Basic Access Authentication in Plug applications."},{"url":"https://github.com/mschae/cors_plug","size":1,"name":"cors_plug","description":"An Elixir plug that adds CORS headers to requests and responds to preflight requests (OPTIONS)."},{"url":"https://github.com/whatyouhide/corsica","size":1,"name":"corsica","description":"Elixir library for dealing with CORS requests."},{"url":"https://github.com/briksoftware/crudex","size":1,"name":"crudex","description":"CRUD utilities for Phoenix and Ecto."},{"url":"https://github.com/zmoshansky/echo","size":1,"name":"echo","description":"A meta-notification system; Echo checks notification preferences & dispatches notifications."},{"url":"https://github.com/adanselm/exrecaptcha","size":1,"name":"exrecaptcha","description":"Simple reCaptcha display/verify code for Elixir applications."},{"url":"https://github.com/rozap/finch","size":1,"name":"flinch","description":"Resource layer for Phoenix and Ecto projects for auto-generated RESTful CRUD APIs."},{"url":"https://github.com/slogsdon/elixir-http-router","size":1,"name":"http_router","description":"HTTP Router with various macros to assist in developing your application and organizing your code."},{"url":"https://github.com/opendrops/passport","size":1,"name":"passport","description":"Passport provides authentication for Phoenix applications."},{"url":"https://github.com/phoenixframework/phoenix_ecto","size":1,"name":"phoenix_ecto","description":"Phoenix and Ecto integration."},{"url":"https://github.com/etufe/phoenix_generator","size":1,"name":"phoenix_generator","description":"Generate boilerplate for Phoenix applications."},{"url":"https://github.com/phoenixframework/phoenix_html","size":1,"name":"phoenix_html","description":"Phoenix.HTML functions for working with HTML strings and templates."},{"url":"https://github.com/elixirstatus/phoenix_html_sanitizer","size":1,"name":"phoenix_html_sanitizer","description":"HTML Sanitizer integration for Phoenix."},{"url":"https://github.com/jxs/phoenix_linguist","size":1,"name":"phoenix_linguist","description":"A project that integrates Phoenix with Linguist, providing a plug and view helpers."},{"url":"https://github.com/phoenixframework/phoenix_live_reload","size":1,"name":"phoenix_live_reload","description":"Provides live-reload functionality for Phoenix."},{"url":"https://github.com/opendrops/phoenix-pubsub-postgres","size":1,"name":"phoenix_pubsub_postgres","description":"Postgresql PubSub adapter for Phoenix apps."},{"url":"https://github.com/pma/phoenix_pubsub_rabbitmq","size":1,"name":"phoenix_pubsub_rabbitmq","description":"RabbitMQ adapter for Phoenix's PubSub layer."},{"url":"https://github.com/phoenixframework/phoenix_pubsub_redis","size":1,"name":"phoenix_pubsub_redis","description":"The Redis PubSub adapter for the Phoenix framework."},{"url":"https://github.com/larshesel/phoenix_pubsub_vernemq","size":1,"name":"phoenix_pubsub_vernemq","description":"The VerneMQ MQTT pubsub adapter for the Phoenix framework."},{"url":"https://github.com/doomspork/phoenix_slim","size":1,"name":"phoenix_slim","description":"Slim template support for Phoenix."},{"url":"https://github.com/manukall/phoenix_token_auth","size":1,"name":"phoenix_token_auth","description":"Token authentication solution for Phoenix. Useful for APIs or single page apps."},{"url":"https://github.com/elixir-lang/plug","size":1,"name":"plug","description":"A specification and conveniences for composable modules in between web applications."},{"url":"https://github.com/mneudert/plug_accesslog","size":1,"name":"plug_accesslog","description":"Plug for writing access logs."},{"url":"https://github.com/briksoftware/plug_auth","size":1,"name":"plug_auth","description":"Collection of authentication-related plugs."},{"url":"https://github.com/c-rack/plug_cloudflare","size":1,"name":"plug_cloudflare","description":"Inspired by mod_cloudflare, this Elixir plug parses Cloudflares CF-Connecting-IP HTTP request header into Plug.Conn's remote_ip field."},{"url":"https://github.com/awetzel/plug_forwarded_peer","size":1,"name":"plug_forward_peer","description":"Very simple plug which reads X-Forwarded-For or Forwarded header according to RFC7239 and fill conn.remote_ip with the root client ip."},{"url":"https://github.com/whatyouhide/plug_heartbeat","size":1,"name":"plug_heartbeat","description":"A plug for responding to heartbeat requests."},{"url":"https://github.com/bryanjos/plug_jwt","size":1,"name":"plug_jwt","description":"Plug for JWT authentication."},{"url":"https://github.com/cconstantin/plug_rails_cookie_session_store","size":1,"name":"plug_rails_cookie_session_store","description":"Rails compatible Plug session store."},{"url":"https://github.com/stocks29/plug_redirect_https.git","size":1,"name":"plug_redirect_https","description":"Plug to redirect http requests to https requests behind a reverse proxy."},{"url":"https://github.com/DevL/plug_require_header","size":1,"name":"plug_require_header","description":"Require and extract HTTP headers and handle missing ones."},{"url":"https://github.com/c-rack/plug_response_header","size":1,"name":"plug_response_header","description":"easy manipulation of HTTP response headers."},{"url":"https://github.com/stnly/plug_ribbon","size":1,"name":"plug_ribbon","description":"Injects a ribbon to your web application in the development environment."},{"url":"https://github.com/gutschilla/plug-session-memcached","size":1,"name":"plug_session_memcached","description":"A very simple memcached session store for Elixir's plug."},{"url":"https://github.com/jeffweiss/plug_statsd","size":1,"name":"plug_statsd","description":"A plug for automatically sending timing and count metrics to statsd."},{"url":"https://github.com/sugar-framework/plugs","size":1,"name":"plugs","description":"Collection of Plug middleware for web applications."},{"url":"https://github.com/jarednorman/plugsnag","size":1,"name":"plugsnag","description":"Bugsnag notifier for Elixir's plug."},{"url":"https://github.com/cobenian/raygun","size":1,"name":"raygun","description":"Capture bugs and send them to Raygun."},{"url":"https://github.com/Frost/resin","size":1,"name":"resin","description":"Resin is a plug that will add a configurable delay to every request that's passing through it, unless run in production."},{"url":"https://github.com/gausby/scaffold","size":1,"name":"scaffold","description":"A mix task for creating new projects based on templates fetched from a Git-repo."},{"url":"https://github.com/drewolson/scrivener","size":1,"name":"scrivener","description":"Paginate your Ecto queries."},{"url":"https://github.com/mschae/trailing_format_plug","size":1,"name":"trailing_format_plug","description":"An Elixir plug to support legacy APIs that use a rails-like trailing format."},{"url":"https://github.com/herenowcoder/webassembly","size":1,"name":"webassembly","description":"Web DSL for Elixir."},{"url":"https://github.com/stevenschobert/weebo","size":1,"name":"weebo","description":"An XML-RPC parser/formatter for Elixir, with full support for datatype mapping."}]},{"name":"Frameworks","children":[{"url":"https://github.com/lpil/clint","size":1,"name":"clint","description":"An Elixir web micro-framework, inspired by Sinatra, built on top of Plug and Cowboy."},{"url":"https://github.com/pigmej/exelli","size":1,"name":"exelli","description":"An Elli Elixir wrapper with some sugar sytnax goodies."},{"url":"https://github.com/phoenixframework/phoenix","size":1,"name":"phoenix","description":"Elixir Web Framework targeting full-featured, fault tolerant applications with realtime functionality."},{"url":"https://github.com/slogsdon/placid","size":1,"name":"placid","description":"A REST toolkit for building highly-scalable and fault-tolerant HTTP APIs with Elixir."},{"url":"https://github.com/AntonFagerberg/rackla","size":1,"name":"rackla","description":"API Gateways in Elixir."},{"url":"https://github.com/AgilionApps/relax","size":1,"name":"relax","description":"Simple Elixir implementation of a [jsonapi.org](http://jsonapi.org) server."},{"url":"https://github.com/synrc/rest","size":1,"name":"rest","description":"Micro-REST framework with typed JSON."},{"url":"https://github.com/sugar-framework/sugar","size":1,"name":"sugar","description":"Modular web framework for Elixir."},{"url":"https://github.com/hexedpackets/trot","size":1,"name":"trot","description":"An Elixir web micro-framework."}]},{"name":"Geolocation","children":[{"url":"https://github.com/bryanjos/geo","size":1,"name":"geo","description":"A collection of GIS functions for Elixir."},{"url":"https://github.com/mneudert/geolix","size":1,"name":"geolix","description":"MaxMind GeoIP2 database reader/decoder."}]},{"name":"Hardware","children":[{"url":"https://github.com/fhunleth/elixir_ale","size":1,"name":"elixir_ale","description":"Elixir access to hardware I/O interfaces such as GPIO, I2C, and SPI."}]},{"name":"HTTP","children":[{"url":"https://github.com/SebastianSzturo/bolt","size":1,"name":"bolt","description":"Simple and fast http proxy."},{"url":"https://github.com/meh/cauldron","size":1,"name":"cauldron","description":"An HTTP/SPDY server as a library."},{"url":"https://github.com/knutin/elli","size":1,"name":"elli","description":"Elli is a webserver you can run inside your Erlang application to expose an HTTP API."},{"url":"https://github.com/parroty/exvcr","size":1,"name":"exvcr","description":"HTTP request/response recording library for Elixir, inspired by VCR."},{"url":"https://github.com/slogsdon/http","size":1,"name":"http","description":"HTTP server for Elixir."},{"url":"https://github.com/edgurgel/httpoison","size":1,"name":"httpoison","description":"Yet Another HTTP client for Elixir powered by hackney."},{"url":"https://github.com/myfreeweb/httpotion","size":1,"name":"httpotion","description":"Fancy HTTP client for Elixir, based on ibrowse."},{"url":"https://github.com/meh/httprot","size":1,"name":"httprot","description":"HTTP client library."},{"url":"https://github.com/talko/lhttpc","size":1,"name":"lhttpc","description":"A lightweight HTTP/1.1 client implemented in Erlang."},{"url":"https://github.com/mochi/mochiweb","size":1,"name":"mochiweb","description":"MochiWeb is an Erlang library for building lightweight HTTP servers."},{"url":"https://github.com/MyMedsAndMe/spell","size":1,"name":"spell","description":"Spell is a [Web Application Messaging Protocol](http://wamp.ws/) (WAMP) client implementation in Elixir."},{"url":"https://github.com/monterail/tesla","size":1,"name":"tesla","description":"HTTP client library, with support for middleware and multiple adapters."},{"url":"https://github.com/pezra/ex-uri-template","size":1,"name":"uri_template","description":"RFC6570 compliant URI template processor for Elixir."},{"url":"https://github.com/slogsdon/plug-web-socket","size":1,"name":"web_socket","description":"An exploration into a stand-alone library for Plug applications to easily adopt WebSockets."},{"url":"https://github.com/stuart/elixir-webdriver","size":1,"name":"webdriver","description":"This is an implementation of the WebDriver protocol client. It currently supports PhantomJS, FireFox, ChromeDriver and remote webdriver servers (e.g. Selenium)."}]},{"name":"Images","children":[{"url":"https://github.com/evanfarrar/ex_bump","size":1,"name":"bump","description":"A BMP file writer in pure Elixir."},{"url":"https://github.com/mmmries/chunky_svg","size":1,"name":"chunky_svg","description":"A library for drawing things with SVG."},{"url":"https://github.com/pragdave/exexif","size":1,"name":"exexif","description":"Pure Elixir library to extract TIFF and EFIX metadata from jpeg files."},{"url":"https://github.com/rbishop/identicon","size":1,"name":"identicon","description":"An Elixir library for generating 5x5 identicons."},{"url":"https://github.com/SenecaSystems/imagineer","size":1,"name":"imagineer","description":"Image parsing in Elixir."},{"url":"https://github.com/route/mogrify","size":1,"name":"mogrify","description":"An Elixir wrapper for ImageMagick command line."},{"url":"https://github.com/yuce/png","size":1,"name":"png","description":"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."}]},{"name":"JSON","children":[{"url":"https://github.com/guedes/exjson","size":1,"name":"exjson","description":"JSON parser and generator in Elixir."},{"url":"https://github.com/talentdeficit/exjsx","size":1,"name":"exjsx","description":"JSON for Elixir, based on `jsx`."},{"url":"https://github.com/AgilionApps/ja_serializer","size":1,"name":"ja_serializer","description":"JSONAPI.org Serialization in Elixir."},{"url":"https://github.com/meh/jazz","size":1,"name":"jazz","description":"Yet another library to handle JSON in Elixir."},{"url":"https://github.com/bryanjos/joken","size":1,"name":"joken","description":"Encodes and decodes JSON Web Tokens."},{"url":"https://github.com/talentdeficit/exjsx","size":1,"name":"jsex","description":"json for Elixir."},{"url":"https://github.com/cblage/elixir-json","size":1,"name":"json","description":"Native JSON library for Elixir."},{"url":"https://github.com/xavier/json_pointer","size":1,"name":"json_pointer","description":"Implementation of RFC 6901 which defines a string syntax for identifying a specific value within a JSON document."},{"url":"https://github.com/garyf/json_web_token_ex","size":1,"name":"json_web_token_ex","description":"An Elixir implementation of the JSON Web Token (JWT) Standards Track (RFC 7519)."},{"url":"https://github.com/jeregrine/jsonapi","size":1,"name":"jsonapi","description":"A project that will render your data models into [JSONAPI Documents](http://jsonapi.org/format)."},{"url":"https://github.com/talentdeficit/jsx","size":1,"name":"jsx","description":"An Erlang application for consuming, producing, and manipulating json."},{"url":"https://github.com/talentdeficit/jsxn","size":1,"name":"jsxn","description":"jsx but with maps."},{"url":"https://github.com/mschae/jwtex","size":1,"name":"jwtex","description":"A library to encode and decode [JWT tokens](http://jwt.io/)."},{"url":"https://github.com/devinus/poison","size":1,"name":"poison","description":"Poison is a new JSON library for Elixir focusing on wicked-fast speed without sacrificing simplicity, completeness, or correctness."},{"url":"https://github.com/camshaft/world_json_ex","size":1,"name":"world_json","description":"topojson country and state/province collections for elixir/erlang."}]},{"name":"Languages","children":[{"url":"https://github.com/jwhiteman/lighthouse-scheme","size":1,"name":"lighthouse_scheme","description":"A small Lisp-like language and interactive REPL, built in Elixir."}]},{"name":"Lexical analysis","children":[{"url":"https://github.com/bryanjos/elixirscript","size":1,"name":"elixir_script","description":"The goal is to convert a subset (or full set) of Elixir code to JavaScript."},{"url":"https://github.com/marcelog/ex_abnf","size":1,"name":"ex_abnf","description":"Parser for ABNF Grammars in Elixir."},{"url":"https://github.com/jamesotron/lex_luthor","size":1,"name":"lex_luthor","description":"LexLuthor is a Lexer in Elixir which uses macros to generate a reusable lexers."}]},{"name":"Logging","children":[{"url":"https://github.com/honeybadger-io/honeybadger-elixir","size":1,"name":"honeybadger","description":"Error logging to [Honeybadger](honeybadger.io)."},{"url":"https://github.com/LeeroyDing/json_logger","size":1,"name":"json_logger","description":"JSON Logger is a logger backend that outputs elixir logs in JSON format."},{"url":"https://github.com/basho/lager","size":1,"name":"lager","description":"A logging framework for Erlang/OTP by basho.com."},{"url":"https://github.com/PSPDFKit-labs/lager_logger","size":1,"name":"lager_logger","description":"A lager backend that forwards all log messages to Elixir's Logger."},{"url":"https://github.com/jclem/logfmt-elixir","size":1,"name":"logfmt","description":"Logfmt is a module for encoding and decoding logfmt-style log lines."},{"url":"https://github.com/marcelog/logger_logstash_backend","size":1,"name":"logger_logstash_backend","description":"A backend for the Elixir Logger that will send logs to the Logstash UDP input."},{"url":"https://github.com/rwdaigle/metrix","size":1,"name":"metrix","description":"Log custom app metrics to stdout for use by Librato and other downstream processors."},{"url":"https://github.com/duartejc/rogger","size":1,"name":"rogger","description":"Elixir logger to publish log messages in RabbitMQ."},{"url":"https://github.com/elixir-addicts/rollbax","size":1,"name":"rollbax","description":"Exception tracking and logging to [Rollbar](https://rollbar.com/)."},{"url":"https://github.com/Vagabond/erlang-syslog","size":1,"name":"syslog","description":"Erlang port driver for interacting with syslog via syslog(3)."}]},{"name":"Macros","children":[{"url":"https://github.com/sviridov/anaphora-elixir","size":1,"name":"anaphora","description":"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."},{"url":"https://github.com/liveforeverx/apix","size":1,"name":"apix","description":"Simple convention and DSL for transformation of elixir functions to an API for later documentation and or validation."},{"url":"https://github.com/DevL/guardsafe","size":1,"name":"guardsafe","description":"Macros expanding into code that can be safely used in guard clauses."},{"url":"https://github.com/camshaft/lineo","size":1,"name":"lineo","description":"parse transform for accurate line numbers."},{"url":"https://github.com/mgwidmann/elixir-pattern_tap","size":1,"name":"pattern_tap","description":"Macro for tapping into a pattern match while using the pipe operator."},{"url":"https://github.com/batate/elixir-pipes","size":1,"name":"pipes","description":"Macros for more flexible composition with the Elixir Pipe operator."},{"url":"https://github.com/camshaft/rebind","size":1,"name":"rebind","description":"rebind parse transform for Erlang."},{"url":"https://github.com/awetzel/rulex","size":1,"name":"rulex","description":"Simple rule handler using Elixir pattern matching."}]},{"name":"Markdown","children":[{"url":"https://github.com/asaaki/cmark.ex","size":1,"name":"cmark","description":"Elixir NIF for CommonMark (in C), a parser following the CommonMark spec."},{"url":"https://github.com/asaaki/discount.ex","size":1,"name":"discount","description":"Elixir NIF for discount, a Markdown parser."},{"url":"https://github.com/pragdave/earmark","size":1,"name":"earmark","description":"Markdown parser for Elixir."},{"url":"https://github.com/devinus/markdown","size":1,"name":"Markdown","description":"Implemented entirely as a NIF binding to the Hoedown library."},{"url":"https://github.com/filterkaapi/pandex","size":1,"name":"Pandex","description":"Lightweight Elixir wrapper for Pandoc. Converts Markdown, CommonMark, HTML, Latex, HTML, HTML5, opendocument, rtf, texttile, asciidoc to each other."}]},{"name":"Miscellaneous","children":[{"url":"https://github.com/smashedtoatoms/address_us","size":1,"name":"address_us","description":"Library for parsing US Addresses into their individual parts."},{"url":"https://github.com/bjro/apex","size":1,"name":"Apex","description":"Awesome Print for Elixir."},{"url":"https://github.com/tomgco/elixir-charm","size":1,"name":"charm","description":"Use ANSI terminal characters to write colors and cursor positions."},{"url":"https://github.com/evolet-project/core_data","size":1,"name":"core_data","description":"iOS Core Data parser."},{"url":"https://github.com/SebastianSzturo/countries","size":1,"name":"Countries","description":"Countries is a collection of all sorts of useful information for every country in the ISO 3166 standard."},{"url":"https://github.com/Kabie/dye","size":1,"name":"dye","description":"A library for dyeing your terminal output."},{"url":"https://github.com/okeuday/dynamic_compile","size":1,"name":"dynamic_compile","description":"Compile and load Erlang modules from string input."},{"url":"https://github.com/okeuday/erlang_term","size":1,"name":"erlang_term","description":"Provide the in-memory size of Erlang terms, ignoring where these are stored."},{"url":"https://github.com/ericmj/ex2ms","size":1,"name":"ex2ms","description":"Translates Elixir functions to match specifications for use with `ets`."},{"url":"https://github.com/grempe/ex_rated","size":1,"name":"ex_rated","description":"Simple and flexible rate-limiting for API's or anything."},{"url":"https://github.com/pragdave/exlibris","size":1,"name":"exlibris","description":"A collection of random library functions."},{"url":"https://github.com/parroty/exprintf","size":1,"name":"exprint","description":"A printf / sprintf library for Elixir, works as a wrapper for :io.format."},{"url":"https://github.com/meh/exquisite","size":1,"name":"exquisite","description":"LINQ-like match_spec generation for Elixir."},{"url":"https://github.com/falood/exsync","size":1,"name":"exsync","description":"Yet another Elixir reloader."},{"url":"https://github.com/chatgris/funnel","size":1,"name":"funnel","description":"Streaming Elixir API built upon ElasticSearch's percolation."},{"url":"https://github.com/ma2gedev/gimei_ex","size":1,"name":"gimei_ex","description":"Elixir port of gimei library."},{"url":"https://github.com/zhallett/growl","size":1,"name":"growl","description":"Simple wrapper for growl, the notification system for OSX."},{"url":"https://github.com/martinsvalin/html_entities","size":1,"name":"html_entities","description":"Elixir module for decoding HTML entities in a string."},{"url":"https://github.com/xavier/huex","size":1,"name":"huex","description":"Elixir client for Philips Hue connected light bulbs."},{"url":"https://github.com/okeuday/keys1value","size":1,"name":"keys1value","description":"Erlang set associative map for key lists."},{"url":"https://github.com/pragdave/mdef","size":1,"name":"mdef","description":"Easily define multiple function heads in Elixir."},{"url":"https://github.com/ma2gedev/mix-star","size":1,"name":"mixstar","description":"MixStar starred GitHub repository that depends on your project."},{"url":"https://github.com/ma2gedev/netrcex","size":1,"name":"netrc","description":"Reads netrc files implemented in Elixir."},{"url":"https://github.com/BlakeWilliams/pact","size":1,"name":"pact","description":"Better dependency injection in Elixir for cleaner code and testing."},{"url":"https://github.com/alco/porcelain","size":1,"name":"porcelain","description":"Porcelain implements a saner approach to launching and communicating with external OS processes from Elixir."},{"url":"https://github.com/Cobenian/Presentex","size":1,"name":"presentex","description":"Elixir to HTML/JavaScript based presentation framework."},{"url":"https://github.com/lowks/Radpath","size":1,"name":"radpath","description":"A path library for Elixir inspired by Python path libraries."},{"url":"https://github.com/liveforeverx/ratx","size":1,"name":"ratx","description":"Rate limiter and overload protection for erlang application."},{"url":"https://github.com/herenowcoder/reprise","size":1,"name":"reprise","description":"Simplified module reloader for Elixir."},{"url":"https://github.com/jtmoulia/spawndir","size":1,"name":"spawndir","description":"Spawns processes from the file system."},{"url":"https://github.com/semanticart/url_unroller","size":1,"name":"url_unroller","description":"Simple URL unroller (un-shortener) in Elixir."}]},{"name":"Native Implemented Functions","children":[{"url":"https://github.com/rossjones/nifty","size":1,"name":"nifty","description":"Helper script for setting up the boilerplate required when writing a NIF."}]},{"name":"Networking","children":[{"url":"https://github.com/alco/chatty","size":1,"name":"chatty","description":"A basic IRC client that is most useful for writing a bot."},{"url":"https://github.com/elixir-cn/eio","size":1,"name":"eio","description":"Elixir server of [engine.io](http://engine.io/)."},{"url":"https://github.com/processone/ejabberd","size":1,"name":"ejabberd","description":"Robust, ubiquitous and massively scalable Jabber/XMPP Instant Messaging platform."},{"url":"https://github.com/bitwalker/exirc","size":1,"name":"ExIrc","description":"IRC client adapter for Elixir projects."},{"url":"https://github.com/cobenian/expcap","size":1,"name":"ExPcap","description":"PCAP parser written in Elixir."},{"url":"https://github.com/scrogson/hedwig","size":1,"name":"hedwig","description":"XMPP Client/Bot Framework for Elixir."},{"url":"https://github.com/slogsdon/pool","size":1,"name":"pool","description":"Socket acceptor pool for Elixir."},{"url":"https://github.com/meh/reagent","size":1,"name":"reagent","description":"reagent is a socket acceptor pool for Elixir."},{"url":"https://github.com/koudelka/slacker","size":1,"name":"slacker","description":"A bot library for the Slack chat service."},{"url":"https://github.com/meh/elixir-socket","size":1,"name":"socket","description":"Socket wrapping for Elixir."},{"url":"https://github.com/elpulgardelpanda/sshex","size":1,"name":"sshex","description":"Simple SSH helpers for Elixir."},{"url":"https://github.com/gausby/wifi","size":1,"name":"wifi","description":"Various utility functions for working with the local Wifi network in Elixir."},{"url":"https://github.com/fhunleth/wpa_supplicant.ex","size":1,"name":"wpa_supplicant","description":"Elixir interface to the wpa_supplicant."},{"url":"https://github.com/Yawolf/yocingo","size":1,"name":"yocingo","description":"Create your own Telegram Bot."},{"url":"https://github.com/jquadrin/yodel","size":1,"name":"yodel","description":"Extensible Messaging & Presence Protocol (XMPP) client in Elixir."}]},{"name":"Office","children":[{"url":"https://github.com/leifg/excellent","size":1,"name":"excellent","description":"An OpenXL (Excel 2000) Parser for Elixir."}]},{"name":"ORM and Datamapping","children":[{"url":"https://github.com/meh/amnesia","size":1,"name":"amnesia","description":"Mnesia wrapper for Elixir."},{"url":"https://github.com/stavro/arc_ecto","size":1,"name":"arc_ecto","description":"Arc.Ecto provides an integration with [Arc](https://github.com/stavro/arc) and Ecto."},{"url":"https://github.com/chrismccord/atlas","size":1,"name":"atlas","description":"Object Relational Mapper for Elixir."},{"url":"https://github.com/briksoftware/boltun","size":1,"name":"boltun","description":"Transforms notifications from the Postgres LISTEN/NOTIFY mechanism into callback execution."},{"url":"https://github.com/mneudert/caylir","size":1,"name":"caylir","description":"Cayley driver for Elixir."},{"url":"https://github.com/crate/craterl","size":1,"name":"craterl","description":"Erlang client for crate."},{"url":"https://github.com/s-m-i-t-a/database_url","size":1,"name":"database_url","description":"Parse database URL and return keyword list for use with Ecto."},{"url":"https://github.com/edubkendo/datomex","size":1,"name":"datomex","description":"Elixir driver for the Datomic REST API."},{"url":"https://github.com/meh/dexts","size":1,"name":"dexts","description":"Disk Elixir Terms Storage, dest wrapper."},{"url":"https://github.com/novabyte/diver","size":1,"name":"diver","description":"A HBase driver for Erlang/Elixir using Jinterface and the Asynchbase Java client to query the database."},{"url":"https://github.com/dalmatinerdb/dproto","size":1,"name":"dproto","description":"Protocols for DalmatinerDB."},{"url":"https://github.com/dalmatinerdb/dqe","size":1,"name":"dqe","description":"DalmatinerDB query engine."},{"url":"https://github.com/elixir-lang/ecto","size":1,"name":"ecto","description":"A database wrapper and language integrated query for Elixir."},{"url":"https://github.com/gjaldon/ecto_enum","size":1,"name":"ecto_enum","description":"Ecto extension to support enums in models."},{"url":"https://github.com/stavro/ecto_hstore","size":1,"name":"ecto_hstore","description":"Ecto.Hstore adds Postgres Hstore compatibility to Ecto."},{"url":"https://github.com/joshdholtz/ecto-lazy-float","size":1,"name":"ecto_lazy_float","description":"Ecto.LazyFloat - An Ecto.Float that accepts binary and integers."},{"url":"https://github.com/xerions/ecto_migrate","size":1,"name":"ecto_migrate","description":"Ecto auto migration library. It allows to generate and run migrations for initial and update migrations."},{"url":"https://github.com/trustatom-oss/ecto-ordered","size":1,"name":"ecto_ordered","description":"Ecto extension for ordered models."},{"url":"https://github.com/danielberkompas/ecto_validation_case","size":1,"name":"ecto_validation_case","description":"Simplify your Ecto model validation tests. Loosely inspired by shoulda matchers, but simpler."},{"url":"https://github.com/gjaldon/ectophile","size":1,"name":"ectophile","description":"Ecto extension to instantly support file uploads in models."},{"url":"https://github.com/werbitzky/elastix","size":1,"name":"elastix","description":"A simple Elastic REST client written in Elixir."},{"url":"https://github.com/wooga/eredis","size":1,"name":"eredis","description":"Erlang Redis client."},{"url":"https://github.com/tsloughter/erlastic_search","size":1,"name":"erlastic_search","description":"An Erlang app for communicating with Elastic Search's rest interface."},{"url":"https://github.com/mmzeeman/esqlite","size":1,"name":"esqlite","description":"Erlang NIF for sqlite."},{"url":"https://github.com/JonGretar/ExBitcask","size":1,"name":"ex_bitcask","description":"Elixir wrapper of Basho's Bitcask Key/Value store."},{"url":"https://github.com/skovsgaard/exleveldb","size":1,"name":"exleveldb","description":"Elixir wrapper around Basho's eleveldb module for LevelDB."},{"url":"https://github.com/artemeff/exredis","size":1,"name":"exredis","description":"Redis client for Elixir."},{"url":"https://github.com/seaneshbaugh/exseed","size":1,"name":"exseed","description":"An Elixir library that provides a simple DSL for seeding databases through Ecto."},{"url":"https://github.com/meh/exts","size":1,"name":"exts","description":"Elixir Terms Storage, ets wrapper."},{"url":"https://github.com/senecasystems/hstore","size":1,"name":"hstore","description":"Hstore support for Postgrex."},{"url":"https://github.com/mneudert/instream","size":1,"name":"instream","description":"InfluxDB driver for Elixir."},{"url":"https://github.com/Frost/isn","size":1,"name":"isn","description":"Ecto types for the postgreSQL isn extension."},{"url":"https://github.com/lau/kalecto","size":1,"name":"kalecto","description":"Glue between Kalends and Ecto for saving dates, times and datetimes."},{"url":"https://github.com/synrc/kvs","size":1,"name":"kst","description":"Erlang Abstract Term Database."},{"url":"https://github.com/gausby/level","size":1,"name":"level","description":"Level for Elixir implements various helper functions and data types for working with Googles Level data store."},{"url":"https://github.com/xerions/mariaex","size":1,"name":"mariaex","description":"MariaDB/MySQL driver for Elixir."},{"url":"https://github.com/checkiz/elixir-mongo","size":1,"name":"mongo","description":"MongoDB driver for Elixir."},{"url":"https://github.com/mysql-otp/mysql-otp","size":1,"name":"mysql","description":"MySQL/OTP – MySQL driver for Erlang/OTP."},{"url":"https://github.com/tjheeta/mysqlex","size":1,"name":"mysqlex","description":"An Ecto-compatible wrapper around the mysql-otp library."},{"url":"https://github.com/ericmj/postgrex","size":1,"name":"postgrex","description":"PostgreSQL driver for Elixir."},{"url":"https://github.com/rodrigues/red","size":1,"name":"red","description":"Persist relationships between objects in Redis, in a graph-like way."},{"url":"https://github.com/heroku/redo","size":1,"name":"redo","description":"Heroku's pipelining redis client for erlang."},{"url":"https://github.com/hamiltop/rethinkdb-elixir","size":1,"name":"rethinkdb","description":"Rethinkdb client in pure Elixir using JSON protocol."},{"url":"https://github.com/drewkerrigan/riak-elixir-client","size":1,"name":"riak","description":"A Riak client written in Elixir."},{"url":"https://github.com/jazzyb/sqlite_ecto","size":1,"name":"sqlite_ecto","description":"SQLite3 adapter for Ecto."},{"url":"https://github.com/mmmries/sqlitex","size":1,"name":"sqlitex","description":"An Elixir wrapper around esqlite. Allows access to sqlite3 databases."},{"url":"https://github.com/lidashuang/ssdb-elixir","size":1,"name":"ssdb_elixir","description":"ssdb client for Elixir, with focus on performance."},{"url":"https://github.com/livehelpnow/tds","size":1,"name":"tds","description":"MSSQL / TDS Database driver for Elixir."},{"url":"https://github.com/livehelpnow/tds_ecto","size":1,"name":"tds_ecto","description":"MSSQL / TDS Adapter for Ecto."},{"url":"https://github.com/bitwalker/timex_ecto","size":1,"name":"timex_ecto","description":"An adapter for using Timex DateTimes with Ecto."},{"url":"https://github.com/Zatvobor/tirexs","size":1,"name":"tirexs","description":"An Elixir flavored DSL for building JSON based requests to Elasticsearch engine."},{"url":"https://github.com/timbuchwaldt/udpflux","size":1,"name":"udpflux","description":"An opinionated InfluxDB UDP only client ."},{"url":"https://github.com/dantswain/yar","size":1,"name":"yar","description":"Yet another Redis client for Elixir."}]},{"name":"OTP","children":[{"url":"https://github.com/fishcakez/core","size":1,"name":"core","description":"Library for selective receive OTP processes."},{"url":"https://github.com/danielberkompas/immortal","size":1,"name":"immortal","description":"Immortal is a small collection of helper modules intended to make it easier to build a fault-tolerant OTP application."},{"url":"https://github.com/reset/libex-config","size":1,"name":"libex_config","description":"Helpers for accessing OTP application configuration."}]},{"name":"Package Management","children":[{"url":"https://hex.pm/","size":1,"name":"Hex","description":"A package manager for the Erlang ecosystem."},{"url":"https://github.com/tsloughter/rebar3_hex","size":1,"name":"rebar3_hex","description":"Hex.pm plugin for rebar3."}]},{"name":"PDF","children":[{"url":"https://github.com/SenecaSystems/gutenex","size":1,"name":"gutenex","description":"Native PDF generation for Elixir."},{"url":"https://github.com/ricn/pdf2htmlex","size":1,"name":"pdf2htmlex","description":"Convert PDF docs to beautiful HTML files without losing text or format."}]},{"name":"Protocols","children":[{"url":"https://github.com/bearice/elixir-radius","size":1,"name":"elixir_radius","description":"RADIUS Protocol on Elixir."},{"url":"https://github.com/jcomellas/ex_hl7","size":1,"name":"ex_hl7","description":"Health Level 7 (HL7) is a protocol designed to model and transfer health-related data electronically."},{"url":"https://github.com/bitwalker/exprotobuf","size":1,"name":"exprotobuf","description":"Protocol Buffers in Elixir, made easy."},{"url":"https://github.com/mururu/msgpack-elixir","size":1,"name":"message_pack","description":"MessagePack Implementation for Elixir."},{"url":"https://github.com/lexmag/msgpax","size":1,"name":"msgpax","description":"MessagePack (de)serializer implementation for Elixir."}]},{"name":"Queue","children":[{"url":"https://github.com/awetzel/adap","size":1,"name":"adap","description":"Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules."},{"url":"https://github.com/pma/amqp","size":1,"name":"amqp","description":"Simple Elixir wrapper for the Erlang RabbitMQ client, based on Langohr."},{"url":"https://github.com/aforward/dbus","size":1,"name":"dbus","description":"A dumb message bus for sharing data between microservices decoupled using Redis."},{"url":"https://github.com/jsvisa/elixir_talk","size":1,"name":"elixir_talk","description":"An Elixir client for beanstalkd."},{"url":"https://github.com/mosic/exdisque","size":1,"name":"exdisque","description":"Elixir client for [Disque](https://github.com/antirez/disque), an in-memory, distributed job queue."},{"url":"https://github.com/akira/exq","size":1,"name":"exq","description":"Job processing library for Elixir - compatible with Resque/Sidekiq."},{"url":"https://github.com/d0rc/exrabbit","size":1,"name":"exrabbit","description":"RabbitMQ bindings and DSL for Elixir."},{"url":"https://github.com/takscape/elixir-heapq","size":1,"name":"heapq","description":"A Heap-based Priority Queue Implementation in Elixir."},{"url":"https://github.com/koudelka/elixir-honeydew","size":1,"name":"honeydew","description":"Honeydew is a worker pool library for Elixir."},{"url":"https://github.com/suvash/hulaaki","size":1,"name":"hulaaki","description":"An MQTT 3.1.1 client library written in Elixir."},{"url":"https://github.com/jacklund/kafka_ex","size":1,"name":"kafka_ex","description":"Kafka client library for Elixir."},{"url":"https://github.com/synrc/mqs","size":1,"name":"mqs","description":"RabbitMQ client library, routing keys, RPC over MQ and other stuff."},{"url":"https://github.com/okeuday/pqueue","size":1,"name":"pqueue","description":"Erlang Priority Queue Implementation."},{"url":"https://github.com/falood/queuex","size":1,"name":"queuex","description":"Priority Queue with multiple backends."},{"url":"https://github.com/pragdave/work_queue","size":1,"name":"work_queue","description":"Simple implementation of the hungry-consumer model in Elixir."}]},{"name":"Release Management","children":[{"url":"https://github.com/HashNuke/ansible-elixir-stack","size":1,"name":"ansible-elixir-stack","description":"command setup & deploys to servers, with first-class support for Phoenix apps."},{"url":"https://github.com/elpulgardelpanda/bottler","size":1,"name":"bottler","description":"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."},{"url":"https://github.com/Gazler/changex","size":1,"name":"changex","description":"Automated changelog generation from GIT logs."},{"url":"https://github.com/bitwalker/exrm","size":1,"name":"exrm","description":"Automatically generate a release for your Elixir project."},{"url":"https://github.com/ride/exrm-heroku","size":1,"name":"exrm_heroku","description":"Publish your Elixir releases to Heroku with ease."},{"url":"https://github.com/smpallen99/exrm-rpm","size":1,"name":"exrm_rpm","description":"Create a RPM for your Elixir release with ease."},{"url":"https://github.com/HashNuke/heroku-buildpack-elixir","size":1,"name":"heroku-buildpack-elixir","description":"Heroku buildpack to deploy Elixir apps to Heroku."},{"url":"https://github.com/yrashk/relex","size":1,"name":"relex","description":"Erlang/Elixir Release Assembler."}]},{"name":"REST and API","children":[{"url":"https://github.com/devinus/detergent","size":1,"name":"detergent","description":"An emulsifying Erlang SOAP library."},{"url":"https://github.com/r-icarus/detergentex","size":1,"name":"detergentex","description":"Elixir binding to Detergent erlang library used to call WSDL/SOAP Services."},{"url":"https://github.com/falood/maru","size":1,"name":"maru","description":"Elixir copy of grape for creating REST-like APIs."},{"url":"https://github.com/mazurka/mazurka","size":1,"name":"mazurka","description":"hypermedia api toolkit."},{"url":"https://github.com/edgurgel/signaturex","size":1,"name":"signaturex","description":"Simple key/secret based authentication for APIs."},{"url":"https://github.com/meh/urna","size":1,"name":"urna","description":"Urna is a simple DSL around cauldron to implement REST services."}]},{"name":"Security","children":[{"url":"https://github.com/aforward/safetybox","size":1,"name":"safetybox","description":"Security oriented helper functions for Elixir."},{"url":"https://github.com/benoitc/ssl_verify_hostname","size":1,"name":"ssl_verify_hostname","description":"Erlang library for certificate hostname validation based on RFC 6125."}]},{"name":"Static Page Generation","children":[{"url":"https://github.com/badosu/coil","size":1,"name":"coil","description":"Minimalistic static content engine."},{"url":"https://github.com/BennyHallett/obelisk","size":1,"name":"obelisk","description":"Static blog and website generator."}]},{"name":"Statistics","children":[{"url":"https://github.com/pusewicz/descriptive_statistics","size":1,"name":"descriptive_statistics","description":"Descriptive Statistics for Elixir."},{"url":"https://github.com/synrc/mtx","size":1,"name":"mtx","description":"MTX supports front-end API for tracking Historgram, Meter, Counter, Gauge, Timing keys."},{"url":"https://github.com/msharp/elixir-statistics","size":1,"name":"statistics","description":"Some basic statistical functions for Elixir."},{"url":"https://github.com/raywan/wizard","size":1,"name":"wizard","description":"Math and statistics functions for Elixir."}]},{"name":"Templating","children":[{"url":"https://github.com/soranoba/bbmustache","size":1,"name":"bbmustache","description":"Binary pattern match Based Mustache template engine for Erlang/OTP."},{"url":"https://github.com/zambal/eml","size":1,"name":"eml","description":"Library for writing and manipulating (HTML) markup in Elixir."},{"url":"https://github.com/schultyy/Mustache.ex","size":1,"name":"mustache","description":"Mustache templates for Elixir."},{"url":"https://github.com/jui/mustachex","size":1,"name":"mustachex","description":"Mustache for Elixir - Logic-less templates."},{"url":"https://github.com/sugar-framework/templates","size":1,"name":"templates","description":"Helper library for adding templating to web applications."}]},{"name":"Testing","children":[{"url":"https://github.com/josephwilk/amrita","size":1,"name":"amrita","description":"A polite, well mannered and thoroughly upstanding testing framework for Elixir."},{"url":"https://github.com/batate/blacksmith","size":1,"name":"blacksmith","description":"Data generation framework for Elixir."},{"url":"https://github.com/benjamintanweihao/blitzy","size":1,"name":"blitzy","description":"A simple HTTP load tester in Elixir."},{"url":"https://github.com/PSPDFKit-labs/cobertura_cover","size":1,"name":"cobertura_cover","description":"Writes a coverage.xml from `mix test --cover` file compatible with Jenkins' Cobertura plugin."},{"url":"https://github.com/xerions/ecto_it","size":1,"name":"ecto_it","description":"Ecto plugin with default configuration for repos for testing different ecto plugins with databases."},{"url":"https://github.com/antonmi/espec","size":1,"name":"espec","description":"BDD test framework for Elixir inspired by RSpec."},{"url":"https://github.com/antonmi/espec_phoenix","size":1,"name":"espec_phoenix","description":"ESpec for Phoenix web framework."},{"url":"https://github.com/KazuCocoa/ex_parametarized","size":1,"name":"ex_parametarized","description":"Simple macro for parametarized testing."},{"url":"https://github.com/drewolson/ex_spec","size":1,"name":"ex_spec","description":"BDD-like syntax for ExUnit."},{"url":"https://github.com/parroty/excheck","size":1,"name":"excheck","description":"Property-based testing library for Elixir (QuickCheck style)."},{"url":"https://github.com/sinetris/factory_girl_elixir","size":1,"name":"factory_girl_elixir","description":"Minimal implementation of Ruby's factory_girl in Elixir."},{"url":"https://github.com/igas/faker","size":1,"name":"faker","description":"Faker is a pure Elixir library for generating fake data."},{"url":"https://github.com/KazuCocoa/elixir-gimei","size":1,"name":"gimei","description":"Gimei is a pure Elixir library for generating Japanese fake data."},{"url":"https://github.com/HashNuke/hound","size":1,"name":"hound","description":"Elixir library for writing integration tests and browser automation."},{"url":"https://github.com/stevegraham/hypermock","size":1,"name":"hypermock","description":"HTTP request stubbing and expectation Elixir library."},{"url":"https://github.com/for-GET/katt","size":1,"name":"katt","description":"KATT (Klarna API Testing Tool) is an HTTP-based API testing tool for Erlang."},{"url":"https://github.com/antp/kovacs","size":1,"name":"kovacs","description":"A simple ExUnit test runner."},{"url":"https://github.com/eproxus/meck","size":1,"name":"meck","description":"A mocking library for Erlang."},{"url":"https://github.com/alco/mix-erlang-tasks","size":1,"name":"mix_erlang_tasks","description":"Common tasks for Erlang projects that use Mix."},{"url":"https://github.com/dantswain/mix_eunit","size":1,"name":"mix_eunit","description":"A Mix task to execute eunit tests."},{"url":"https://github.com/lpil/mix-test.watch","size":1,"name":"mix_test_watch","description":"Automatically run your Elixir project's tests each time you save a file."},{"url":"https://github.com/talentdeficit/mixunit","size":1,"name":"mixunit","description":"An EUnit task for Mix based projects."},{"url":"https://github.com/jjh42/mock","size":1,"name":"mock","description":"Mocking library for the Elixir language."},{"url":"https://github.com/sproutapp/pavlov","size":1,"name":"pavlov","description":"BDD framework for your Elixir projects."},{"url":"https://github.com/xavier/plug_test_helpers","size":1,"name":"plug_test_helpers","description":"A simple testing DSL for Plugs."},{"url":"https://github.com/klarna/ponos","size":1,"name":"ponos","description":"Ponos is an Erlang application that exposes a flexible load generator API."},{"url":"https://github.com/manopapad/proper","size":1,"name":"proper","description":"PropEr (PROPerty-based testing tool for ERlang) is a QuickCheck-inspired open-source property-based testing tool for Erlang."},{"url":"https://github.com/batate/shouldi","size":1,"name":"shouldi","description":"Elixir testing libraries with nested contexts, superior readability, and ease of use."},{"url":"https://github.com//stuart/tuco_tuco","size":1,"name":"tuco_tuco","description":"TucoTuco helps you test your web application by running a web browser and simulating user interaction with your application."},{"url":"https://github.com/meadsteve/white-bread","size":1,"name":"white_bread","description":"Story based BDD in Elixir using the gherkin syntax."}]},{"name":"Text and Numbers","children":[{"url":"https://github.com/jrdnull/base58","size":1,"name":"base58","description":"Base58 encoding/decoding for Elixir."},{"url":"https://github.com/gjaldon/base58check","size":1,"name":"base58check","description":"Base58Check encoding/decoding for Bitcoin."},{"url":"https://github.com/igas/base62","size":1,"name":"base62","description":"Base62 encoder/decoder in pure Elixir."},{"url":"https://github.com/alehander42/bencoder","size":1,"name":"bencoder","description":"bencode in Elixir."},{"url":"https://github.com/williamgueiros/Brcpfcnpj","size":1,"name":"brcpfcnpj","description":"Number format and Validate, to the documents brazilians (CPF/CNPJ)."},{"url":"https://github.com/nurugger07/calliope","size":1,"name":"calliope","description":"An Elixir HAML parser."},{"url":"https://github.com/tyrchen/chinese_translation","size":1,"name":"chinese_translation","description":"Translate between traditional chinese and simplified chinese based on wikipedia data, and translate chinese words/characters to pinyin (or slug with or without tone)."},{"url":"https://github.com/c-rack/cidr-elixir","size":1,"name":"cidr","description":"Classless Inter-Domain Routing (CIDR) for Elixir."},{"url":"https://github.com/Cirru/parser.ex","size":1,"name":"cirru_parser","description":"Cirru Parser in Elixir."},{"url":"https://github.com/magicienap/cldr","size":1,"name":"cldr","description":"cldr is a library to use information from CLDR data."},{"url":"https://github.com/Joe-noh/colorful","size":1,"name":"colorful","description":"Elixir macros to decorate characters on CUI."},{"url":"https://github.com/lidashuang/colors","size":1,"name":"colors","description":"Colors util written in Elixir."},{"url":"https://github.com/whatyouhide/convertat","size":1,"name":"convertat","description":"An Elixir library for converting from and to arbitrary bases."},{"url":"https://github.com/seankay/curtail","size":1,"name":"curtail","description":"HTML tag-safe string truncation."},{"url":"https://github.com/igas/custom_base","size":1,"name":"custom_base","description":"Allow you to make custom base conversion in Elixir."},{"url":"https://github.com/ericmj/decimal","size":1,"name":"decimal","description":"Arbitrary precision decimal arithmetic for Elixir."},{"url":"https://github.com/olhado/dicer","size":1,"name":"dicer","description":"A dice roller expression evaluator."},{"url":"https://github.com/jfacorro/Eden","size":1,"name":"eden","description":"[EDN](https://github.com/edn-format/edn) encoder/decoder for Elixir."},{"url":"https://github.com/mgamini/elixilorem","size":1,"name":"elixilorem","description":"Lorem Ipsum generator for Elixir."},{"url":"https://github.com/AntonFagerberg/elixir_bencode","size":1,"name":"elixir_bencode","description":"Bencode implemented in Elixir."},{"url":"https://github.com/marianoguerra/erldn","size":1,"name":"erldn","description":"[EDN](https://github.com/edn-format/edn) format parser for the Erlang platform."},{"url":"https://github.com/chatgris/event_source_encoder","size":1,"name":"event_source_encoder","description":"Encode data into EventSource compliant data."},{"url":"https://github.com/gniquil/ex_brace_expansion","size":1,"name":"ex_brace_expansion","description":"Brace expansion, as known from sh/bash, in Elixir."},{"url":"https://github.com/marcelog/ex_rfc3986","size":1,"name":"ex_rfc3986","description":"RFC3986 URI/URL parser."},{"url":"https://github.com/mroth/exmoji","size":1,"name":"exmoji","description":"Emoji encoding Swiss Army knife for Elixir/Erlang."},{"url":"https://github.com/xavier/expletive","size":1,"name":"expletive","description":"Profanity filter library for Elixir."},{"url":"https://github.com/Rob-bie/Expr","size":1,"name":"expr","description":"An Elixir library for parsing and evaluating mathematical expressions."},{"url":"https://github.com/jquadrin/faust","size":1,"name":"faust","description":"Markov Text Generator for Elixir."},{"url":"https://github.com/knrz/Haikunator","size":1,"name":"haikunator","description":"Generate Heroku-like memorable random names to use in your apps or anywhere else."},{"url":"https://github.com/alco/hashids-elixir","size":1,"name":"hashids","description":"Hashids lets you obfuscate numerical identifiers via reversible mapping."},{"url":"https://github.com/rjsamson/hexate","size":1,"name":"hexate","description":"Simple module for Hex encoding / decoding in Elixir."},{"url":"https://github.com/rrrene/html_sanitize_ex","size":1,"name":"html_sanitize_ex","description":"HTML sanitizer for Elixir."},{"url":"https://github.com/cobenian/inet_cidr","size":1,"name":"inet_cidr","description":"Classless Inter-Domain Routing (CIDR) for Elixir that is compatible with :inet and supports both IPv4 and IPv6."},{"url":"https://github.com/nurugger07/inflex","size":1,"name":"inflex","description":"An Inflector library for Elixir."},{"url":"https://github.com/edubkendo/kitsune","size":1,"name":"kitsune","description":"An Elixir library for transforming the representation of data."},{"url":"https://github.com/ma2gedev/ltsvex","size":1,"name":"ltsvex","description":"LTSV parser implementation in Elixir."},{"url":"https://github.com/woxtu/elixir-mbcs","size":1,"name":"mbcs","description":"Wrapper for erlang-mbcs. This module provides functions for character encoding conversion."},{"url":"https://github.com/camshaft/mimetype_parser","size":1,"name":"mimetype_parser","description":"parse mimetypes."},{"url":"https://github.com/liuggio/money","size":1,"name":"money","description":"Working with Money safer, easier, and fun, interpretation of the Fowler's Money pattern."},{"url":"https://github.com/my-flow/mt940","size":1,"name":"mt940","description":"MT940 (standard structured SWIFT Customer Statement message) parser for Elixir."},{"url":"https://github.com/jtmoulia/neotomex","size":1,"name":"neotomex","description":"A [PEG](http://bford.info/packrat/) implementation with a pleasant Elixir DSL."},{"url":"https://github.com/danielberkompas/number","size":1,"name":"number","description":"Number is a pretentiously-named Elixir library which provides functions to convert numbers into a variety of different formats."},{"url":"https://github.com/lpil/palette","size":1,"name":"palette","description":"A handy library for colouring strings in Elixir."},{"url":"https://github.com/lidashuang/pinyin","size":1,"name":"pinyin","description":"Chinese Pinyin lib for Elixir."},{"url":"https://github.com/frpaulas/porterstemmer","size":1,"name":"porterstemmer","description":"Porter Stemmer in Elixir."},{"url":"https://github.com/polsab/pretty_hex","size":1,"name":"pretty_hex","description":"A binary hex dumping library in Elixir."},{"url":"https://github.com/okeuday/quickrand","size":1,"name":"quickrand","description":"Quick Random Number Generation."},{"url":"https://github.com/elixytics/ref_inspector","size":1,"name":"ref_inspector","description":"Referer parser library in Elixir. Fetching info from URLs."},{"url":"https://github.com/patricksrobertson/secure_random.ex","size":1,"name":"secure_random","description":"Convenience library for random base64 strings modeled after my love for Ruby's SecureRandom."},{"url":"https://github.com/lexmag/simetric","size":1,"name":"simetric","description":"String similarity metrics for Elixir."},{"url":"https://github.com/doomspork/slim_fast","size":1,"name":"slim_fast","description":"An Elixir library for rendering slim templates."},{"url":"https://github.com/h4cc/slugger","size":1,"name":"slugger","description":"Slugger can generate slugs from given strings that can be used in URLs or file names."},{"url":"https://github.com/FranklinChen/tau","size":1,"name":"tau","description":"Provide the famous mathematical constant, tau, τ = 6.2831...."},{"url":"https://github.com/zamith/tomlex","size":1,"name":"tomlex","description":"A TOML parser for Elixir."},{"url":"https://github.com/elixytics/ua_inspector","size":1,"name":"ua_inspector","description":"User agent parser library like `piwik/device-detector`."},{"url":"https://github.com/zyro/elixir-uuid","size":1,"name":"uuid","description":"UUID generator and utilities for Elixir."},{"url":"https://github.com/okeuday/uuid","size":1,"name":"uuid_erl","description":"Erlang Native UUID Generation."}]},{"name":"Third Party APIs","children":[{"url":"https://github.com/romul/airbrake-elixir","size":1,"name":"airbrake","description":"An Elixir notifier for the Airbrake."},{"url":"https://github.com/fazibear/airbrakex","size":1,"name":"airbrakex","description":"Elixir client for the Airbrake service."},{"url":"https://github.com/zachgarwood/elixir-amazon-product-advertising-client","size":1,"name":"amazon_product_advertising_client","description":"Amazon Product Advertising API client for Elixir."},{"url":"https://github.com/bryanjos/balanced-elixir","size":1,"name":"balanced","description":"Balanced API Client for Elixir."},{"url":"https://github.com/bitpay/elixir-client","size":1,"name":"bitpay","description":"Elixir core library for connecting to bitpay.com."},{"url":"https://github.com/BlakeWilliams/Elixir-Cleverbot","size":1,"name":"cleverbot","description":"Simple implementation of the Cleverbot API in Elixir."},{"url":"https://github.com/gregpardo/coinbase-elixir","size":1,"name":"coinbase","description":"A unofficial Coinbase API v1 Client."},{"url":"https://github.com/joshnuss/commerce_billing","size":1,"name":"commerce_billing","description":"A payment-processing library for Elixir that supports multiple gateways (e.g. Bogus & Stripe)."},{"url":"https://github.com/chatgris/currently","size":1,"name":"currently","description":"A tool to display cards currently assigns on Trello."},{"url":"https://github.com/kevinmontuori/digoc","size":1,"name":"digoc","description":"Digital Ocean API v2 Elixir Client."},{"url":"https://github.com/hexedpackets/docker-elixir","size":1,"name":"docker","description":"Elixir client for the Docker Remote API."},{"url":"https://github.com/adamkittelson/dogstatsd-elixir","size":1,"name":"dogstatsd","description":"An Elixir client for [DogStatsd](https://www.datadoghq.com/)."},{"url":"https://github.com/knewter/dpd_client","size":1,"name":"dpd_client","description":"An API client for the DPD service."},{"url":"https://github.com/ammmir/elixir-dropbox","size":1,"name":"dropbox","description":"Dropbox Core API client for Elixir."},{"url":"https://github.com/rozap/edgarex","size":1,"name":"edgarex","description":"Elixir interface for fetching SEC filings from EDGAR."},{"url":"https://github.com/marcelog/elixir_authorizenet","size":1,"name":"elixir_authorizenet","description":"Unofficial client for the Authorize.Net merchant API."},{"url":"https://github.com/jwarlander/everex","size":1,"name":"everex","description":"Evernote API client for Elixir."},{"url":"https://github.com/knewter/everyoneapi","size":1,"name":"everyoneapi","description":"API Client for EveryoneAPI.com."},{"url":"https://github.com/xtagon/ex_omegle","size":1,"name":"ex_omegle","description":"A minimal Omegle chat client library for Elixir."},{"url":"https://github.com/CargoSense/ex_statsd","size":1,"name":"ex_statsd","description":"A statsd client implementation for Elixir."},{"url":"https://github.com/danielberkompas/ex_twilio","size":1,"name":"ex_twilio","description":"Twilio API client for Elixir."},{"url":"https://github.com/danielberkompas/ex_twiml","size":1,"name":"ex_twiml","description":"Generate TwiML for your Twilio integration, right inside Elixir."},{"url":"https://github.com/jeffweiss/exgenius","size":1,"name":"exgenius","description":"Elixir library for the (undocumented) Rap Genius API."},{"url":"https://github.com/scrogson/exgravatar","size":1,"name":"exgravatar","description":"An Elixir module for generating Gravatar URLs."},{"url":"https://github.com/bradleyd/exgrid","size":1,"name":"exgrid","description":"interact with Sendgrid's API."},{"url":"https://github.com/mattweldon/exjira","size":1,"name":"exjira","description":"JIRA client library for Elixir."},{"url":"https://github.com/mtwtkman/exlingr","size":1,"name":"exlingr","description":"A Lingr client module."},{"url":"https://github.com/arthurcolle/exstagram","size":1,"name":"exstagram","description":"Elixir library for Instagram v1 API."},{"url":"https://github.com/parroty/extwitter","size":1,"name":"extwitter","description":"Twitter client library for Elixir."},{"url":"https://github.com/tappsi/exurban","size":1,"name":"exurban","description":"Elixir wrapper for UrbanAirship API."},{"url":"https://github.com/mweibel/facebook.ex","size":1,"name":"facebook","description":"Facebook Graph API Wrapper written in Elixir."},{"url":"https://github.com/essenciary/feedlex","size":1,"name":"feedlex","description":"Feedly RSS reader client for Elixir."},{"url":"https://github.com/trustatom-oss/elixir-fluent-client","size":1,"name":"fluent_client","description":"Minimalistic fluentd client."},{"url":"https://github.com/jeffweiss/forcex","size":1,"name":"forcex","description":"Elixir library for the Force.com REST API."},{"url":"https://github.com/r-icarus/forecast_io","size":1,"name":"forecast_io","description":"Simple wrapper for Forecast.IO API."},{"url":"https://github.com/GrandCru/GoogleSheets","size":1,"name":"google_sheets","description":"Elixir library for fetching and polling Google spreadsheet data in CSV format."},{"url":"https://github.com/JonGretar/Hexoku","size":1,"name":"hexoku","description":"Heroku API client and Heroku Mix tasks for Elixir projects."},{"url":"https://github.com/undeadlabs/instrumental-ex","size":1,"name":"instrumental","description":"An Elixir client for [Instrumental](http://instrumentalapp.com/)."},{"url":"https://github.com/bryanjos/keenex","size":1,"name":"keenex","description":"A Keen.io API Client."},{"url":"https://github.com/jonahoffline/link_shrinkex","size":1,"name":"link_shrinkex","description":"Elixir library for creating short URLs using Google's URL Shortener API."},{"url":"https://github.com/attm2x/m2x-elixir","size":1,"name":"m2x","description":"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](https://github.com/attm2x/m2x-erlang))."},{"url":"https://github.com/duartejc/mailchimp","size":1,"name":"mailchimp","description":"A basic Elixir wrapper for version 3 of the MailChimp API."},{"url":"https://github.com/chrismccord/mailgun","size":1,"name":"mailgun","description":"Elixir Mailgun Client."},{"url":"https://github.com/slogsdon/mandrill-elixir","size":1,"name":"mandrill","description":"A Mandrill wrapper for Elixir."},{"url":"https://github.com/bryanjos/marvel","size":1,"name":"marvel","description":"CLI and Elixir API Client for the Marvel API."},{"url":"https://github.com/michihuber/MixpanelEx","size":1,"name":"mixpanel","description":"An Elixir client for the Mixpanel HTTP API."},{"url":"https://github.com/jeregrine/mixpanel_data_client","size":1,"name":"mixpanel_data_client","description":"Client for interacting with the Mixpanel Data Export API."},{"url":"https://github.com/Arkar-Aung/mmExchangeRate","size":1,"name":"mmExchangeRate","description":"A simple exchange rate checker and calculator based on Central Bank of Myanmar Api."},{"url":"https://github.com/zhyu/nadia","size":1,"name":"nadia","description":"Telegram Bot API Wrapper written in Elixir."},{"url":"https://github.com/adamzaninovich/nest","size":1,"name":"nest","description":"An Elixir library for using the Nest API, allowing integration with Nest Thermostats and other Nest devices."},{"url":"https://github.com/teodor-pripoae/opbeat","size":1,"name":"opbeat","description":"Elixir client for Opbeat."},{"url":"https://github.com/ride/pagexduty","size":1,"name":"pagexduty","description":"A Pagerduty client for Elixir."},{"url":"https://github.com/elixircnx/parse_elixir_client","size":1,"name":"parse_client","description":"Elixir client for the parse.com REST API."},{"url":"https://github.com/maarek/ParsEx","size":1,"name":"parsex","description":"ParsEx is an Elixir HTTP Client for communicating with Parse.com's Restful API."},{"url":"https://github.com/novabyte/pathway","size":1,"name":"pathway","description":"An Erlang/Elixir client for the [Trak.io](http://trak.io/) REST API."},{"url":"https://github.com/essenciary/pocketex","size":1,"name":"pocketex","description":"Pocketex is an Elixir client for the Pocket read later service [getpocket.com](getpocket.com)."},{"url":"https://github.com/edgurgel/pusher","size":1,"name":"pusher","description":"Elixir library to access the Pusher REST API."},{"url":"https://github.com/ma2gedev/qiita_ex","size":1,"name":"qiita_ex","description":"A Qiita API v2 Interface for Elixir."},{"url":"https://github.com/tony612/qiniu","size":1,"name":"qiniu","description":"Qiniu SDK for Elixir."},{"url":"https://github.com/Raynes/reap","size":1,"name":"reap","description":"Reap is a simple Elixir library for working with the refheap API."},{"url":"https://github.com/MonkeyIsNull/reddhl","size":1,"name":"reddhl","description":"An headline and link puller for Reddit and its various subreddits."},{"url":"https://github.com/kkirsche/Redtube_Elixir","size":1,"name":"redtube","description":"Redtube API Wrapper written in Elixir."},{"url":"https://github.com/KazuCocoa/simple_app_reporter_ex","size":1,"name":"reporter","description":"Reporter is simple reporting App reviews library. Support AppStore and GooglePlay."},{"url":"https://github.com/koudelka/elixir-riemann","size":1,"name":"riemann","description":"A [Riemann](http://riemann.io/) client for Elixir."},{"url":"https://github.com/adamkittelson/simplex","size":1,"name":"simplex","description":"An Elixir library for interacting with the Amazon SimpleDB API."},{"url":"https://github.com/BlakeWilliams/Elixir-Slack","size":1,"name":"slack","description":"Slack real time messaging client in Elixir."},{"url":"https://github.com/lexmag/statix","size":1,"name":"statix","description":"Expose app metrics in the StatsD protocol."},{"url":"https://github.com/SenecaSystems/stripe","size":1,"name":"stripe","description":"An Elixir Library wrapping Stripe's API."},{"url":"https://github.com/tagplay/elixir-tagplay","size":1,"name":"tagplay","description":"Elixir client for Tagplay API."},{"url":"https://github.com/danielberkompas/telephonist","size":1,"name":"telephonist","description":"Elixir state machines for Twilio calls."},{"url":"https://github.com/edgurgel/tentacat","size":1,"name":"tentacat","description":"Simple Elixir wrapper for the GitHub API."},{"url":"https://github.com/traitify/traitify_elixir","size":1,"name":"traitify_elixir","description":"An Elixir client library for the Traitify Developer's API."}]},{"name":"Translations and Internationalizations","children":[{"url":"https://github.com/chrismccord/linguist","size":1,"name":"linguist","description":"Elixir Internationalization library."},{"url":"https://github.com/Arkar-Aung/ParabaikElixirConverter","size":1,"name":"parabaikElixirConverter","description":"ParabaikElixirConverter is just a Elixir version of Parabaik converter. It can convert from Unicode to Zawgyi-One and Zawgyi-One to Unicode vice versa."}]},{"name":"Utilities","children":[{"url":"https://github.com/aforward/ar2ecto","size":1,"name":"ar2ecto","description":"Ar2ecto is a set of mix tasks to help you migrate from ActiveRecord to Ecto."},{"url":"https://github.com/erlware/erlware_commons","size":1,"name":"erlware_commons","description":"Additional standard library for Erlang."},{"url":"https://github.com/stocks29/exjprop.git","size":1,"name":"exjprop","description":"Elixir library for reading Java properties files from various sources."},{"url":"https://github.com/Puddah/FitEx","size":1,"name":"fitex","description":"FitEx is a Macro-Module which provides a bit of sugar for function definitions."},{"url":"https://github.com/mgwidmann/global","size":1,"name":"global","description":"Wrapper of the Erlang `:global` module."},{"url":"https://github.com/simonewebdesign/elixir_pubsub","size":1,"name":"pubsub","description":"A Publish-Subscribe utility library that implements a pub-sub mechanism to ease the burden of communication on the business logic processes."}]},{"name":"Validations","children":[{"url":"https://hex.pm/packages/avex","size":1,"name":"avex","description":"Awesome validations for Elixir."},{"url":"https://hex.pm/packages/shape","size":1,"name":"shape","description":"A data validation library for Elixir based on Prismatic Scheme."},{"url":"https://github.com/KushalP/uk_postcode","size":1,"name":"uk_postcode","description":"UK postcode parsing and validation library."},{"url":"https://github.com/CargoSense/vex","size":1,"name":"vex","description":"An extensible data validation library for Elixir."},{"url":"https://github.com/danmcclain/voorhees","size":1,"name":"voorhees","description":"A library for validating JSON responses."}]},{"name":"Version Control","children":[{"url":"https://github.com/awetzel/gitex","size":1,"name":"gitex","description":"Elixir implementation of the Git object storage, but with the goal to implement the same semantic with other storage and topics."}]},{"name":"XML","children":[{"url":"https://github.com/willemdj/erlsom","size":1,"name":"erlsom","description":"Erlsom is an Erlang library to parse (and generate) XML documents."},{"url":"https://github.com/pwoolcoc/exmerl","size":1,"name":"exmerl","description":"Elixir wrapper for xmerl."},{"url":"https://github.com/expelledboy/exml","size":1,"name":"exml","description":"Most simple Elixir wrapper for xmerl xpath."},{"url":"https://github.com/rozap/exquery","size":1,"name":"exquery","description":"A library for parsing HTML and querying elements within."},{"url":"https://github.com/philss/floki","size":1,"name":"floki","description":"A simple HTML parser that enables searching using CSS like selectors."},{"url":"https://github.com/nhu313/Quinn","size":1,"name":"quinn","description":"XML parser for Elixir."},{"url":"https://github.com/jquadrin/spill","size":1,"name":"spill","description":"Parse and reformat XML into spill structure."},{"url":"https://github.com/awetzel/sweet_xml","size":1,"name":"sweet_xml","description":"Query XML simply and effectively."},{"url":"https://github.com/joshnuss/xml_builder","size":1,"name":"xml_builder","description":"Elixir library for generating xml."},{"url":"https://github.com/ewildgoose/elixir-xml_rpc","size":1,"name":"xmlrpc","description":"Library for encoding and decoding XML-RPC for clients and servers."}]},{"name":"YAML","children":[{"url":"https://github.com/yakaz/yamerl","size":1,"name":"yamerl","description":"YAML 1.2 parser in Erlang."},{"url":"https://github.com/KamilLelonek/yaml-elixir","size":1,"name":"yaml_elixir","description":"Yaml parser for Elixir based on native Erlang implementation."},{"url":"https://github.com/Joe-noh/yomel","size":1,"name":"yomel","description":"libyaml interface for Elixir."}]},{"name":"Books","children":[{"url":"https://www.packtpub.com/application-development/elixir-cookbook","size":1,"name":"Elixir Cookbook","description":"This book is a set of recipes grouped by topic by Paulo A Pereira (2015)."},{"url":"http://elixir-for-rubyists.com/","size":1,"name":"Elixir for the functional Rubyist","description":"Not yet released. By Johnny Winn."},{"url":"http://www.manning.com/juric/","size":1,"name":"Elixir in Action","description":"A brief intro to the language followed by a more detailed look at building production-ready systems in Elixir by Saša Jurić (2014)."},{"url":"http://www.erlang-in-anger.com/","size":1,"name":"Erlang in Anger","description":"This book intends to be a little guide about how to be the Erlang medic in a time of war by Fred Hebert (2014)."},{"url":"http://shop.oreilly.com/product/0636920030584.do","size":1,"name":"Introducing Elixir ","description":"A gentle introduction to the language, with lots of code examples and exercises by Simon St. Laurent and J. David Eisenberg (2013)."},{"url":"https://pragprog.com/book/cmelixir/metaprogramming-elixir","size":1,"name":"Metaprogramming Elixir: Write Less Code, Get More Done (and Have Fun!)","description":"Thorough explanation on how to exploit Elixir's metaprogramming capabilities to improve your Elixir coding by Chris McCord (2015)."},{"url":"https://pragprog.com/book/elixir/programming-elixir","size":1,"name":"Programming Elixir","description":"The book provides introduction to functional and concurrent programming with Elixir by Dave Thomas (2014)."},{"url":"https://pragprog.com/book/phoenix/programming-phoenix","size":1,"name":"Programming Phoenix","description":"Definitive guide to build web applications with the Phoenix framework by Chris McCord, José Valim and Bruce Tate (2015)."},{"url":"http://www.exotpbook.com/","size":1,"name":"The Little Elixir & OTP Guidebook","description":"A book for learning Elixir and OTP through small to medium-sized projects by Benjamin Tan Wei Hao (2014)."},{"url":"http://chimera.labs.oreilly.com/books/1234000001642","size":1,"name":"Études for Elixir","description":"A collection of exercises to program in Elixir by J. David Eisenberg (2013) ([Github Repo](https://github.com/oreillymedia/etudes-for-elixir))."}]},{"name":"Community","children":[{"url":"http://webchat.freenode.net/?channels=elixir-lang","size":1,"name":"#elixir-lang","description":"The IRC Channel #elixir-lang on Freenode."},{"url":"http://groups.google.com/group/elixir-lang-core","size":1,"name":"elixir-lang-core","description":"Mailinglist for Elixir Core development, use \"talk\" for questions and general discussions."},{"url":"https://groups.google.com/group/elixir-lang-talk","size":1,"name":"elixir-lang-talk","description":"Official Elixir Mailinglist for questions and discussions."},{"url":"http://functionalslack.com/","size":1,"name":"FunctionalSlack","description":"Functional Programming Slack Community: Clojure, Elixir, Erlang, Elm, Haskell, Julia, OCaml, Scala, F#."}]},{"name":"Editors","children":[{"url":"https://github.com/tonini/alchemist.el","size":1,"name":"Alchemist","description":"Elixir Tooling Integration Into Emacs."},{"url":"https://github.com/tonini/alchemist-server","size":1,"name":"Alchemist-Server","description":"Editor/IDE independent background server to inform about Elixir mix projects."},{"url":"https://atom.io/packages/language-elixir","size":1,"name":"Atom","description":"Elixir language support for Atom."},{"url":"https://github.com/indiejames/atom-iex","size":1,"name":"atom-iex","description":"Run an IEx session in Atom."},{"url":"https://github.com/jadercorrea/elixir_generator.vim","size":1,"name":"elixir_generator","description":"Vim plugin to generate Elixir module and test files with one command."},{"url":"https://github.com/KronicDeth/intellij_elixir","size":1,"name":"intellij_elixir","description":"Elixir helpers for intellj-elixir, the Elixir plugin for JetBrains IDEs."},{"url":"http://plugins.jetbrains.com/plugin/7522","size":1,"name":"Jetbrains","description":"Elixir for IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, Android Studio, 0xDBE."},{"url":"https://github.com/Hades32/elixir-udl-npp","size":1,"name":"Notepad++","description":"Elixir syntax highlighting for Notepad++."},{"url":"https://github.com/elixir-lang/elixir-tmbundle","size":1,"name":"TextMate","description":"Elixir syntax highlighting for TextMate."},{"url":"https://github.com/elixir-lang/vim-elixir","size":1,"name":"vim-elixir","description":"Vim configuration files for Elixir."}]},{"name":"Other Awesome Lists","children":[{"url":"https://github.com/jnv/lists#lists-of-lists","size":1,"name":"jnv/lists","description":"or [bayandin/awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness#awesome-awesomeness).*"},{"url":"https://github.com/drobakowski/awesome-erlang","size":1,"name":"Awesome Erlang","description":"A curated list of awesome Erlang libraries, resources and shiny things."},{"url":"https://github.com/0xAX/erlang-bookmarks","size":1,"name":"Erlang Bookmarks","description":"A collection of links for Erlang developers."}]},{"name":"Reading","children":[{"url":"http://media.pragprog.com/titles/elixir/ElixirCheat.pdf","size":1,"name":"Elixir Cheat-Sheet","description":"A Elixir cheat sheet, by Andy Hunt & Dave Thomas."},{"url":"http://elixirexperience.com/","size":1,"name":"Elixir Experience","description":"List of problems to help learn Elixir."},{"url":"https://github.com/doomspork/elixir_school","size":1,"name":"Elixir School","description":"Lessons in the Fundamentals of Elixir, inspired by Scala School."},{"url":"http://learningelixir.joekain.com/","size":1,"name":"Learning Elixir","description":"Learning Elixir Website, by Joseph Kain."},{"url":"https://github.com/jwhiteman/a-little-elixir-goes-a-long-way","size":1,"name":"The Little Schemer in Elixir","description":"Exercises and algorithms from the Little Schemer book, ported to Elixir."},{"url":"https://github.com/exercism/xelixir","size":1,"name":"xElixir","description":"Exercism Exercises in Elixir."}]},{"name":"Screencasts","children":[{"url":"http://elixirsips.com/","size":1,"name":"Elixir Sips","description":"Tiny screencasts for learning Elixir."},{"url":"http://www.pluralsight.com/courses/meet-elixir","size":1,"name":"Meet Elixir","description":"Walk through some features and concepts of Elixir by José Valim."},{"url":"http://phoenixscreencasts.com/","size":1,"name":"Phoenix Screencasts","description":"Weekly tutorial screencasts for busy developers that are interested in Web Programming in Elixir and Phoenix."}]},{"name":"Styleguides","children":[{"url":"https://github.com/niftyn8/elixir_style_guide","size":1,"name":"The Elixir Style Guide","description":"A community-driven style guide for Elixir."}]},{"name":"Websites","children":[{"url":"https://github.com/seven1m/30-days-of-elixir","size":1,"name":"30 Days of Elixir","description":"A walk through the Elixir language in 30 exercises."},{"url":"http://beamcommunity.github.io/","size":1,"name":"BEAM Community","description":"From distributed systems, to robust servers and language design on the Erlang VM."},{"url":"http://benjamintan.io/blog/tags/elixir/","size":1,"name":"Benjamin Tan - Learnings & Writings","description":"A blog consisting of mostly Elixir posts."},{"url":"https://github.com/jw2013/elixir-china","size":1,"name":"Elixir China","description":"Chinese Elixir website [elixir-cn.com](http://elixir-cn.com/)."},{"url":"http://elixirexperience.com/","size":1,"name":"Elixir Experience","description":"This is a list of problems to help learn Elixir."},{"url":"https://github.com/elixir-lang/elixir","size":1,"name":"Elixir Github Repository","description":"The project repository."},{"url":"https://github.com/elixir-lang/elixir/wiki","size":1,"name":"Elixir Github Wiki","description":"The project's wiki, containing much useful information."},{"url":"http://jobs.elixirdose.com","size":1,"name":"Elixir Job Board","description":"A job board for Elixir, and community of Elixir developers, [written using Phoenix](https://github.com/rizafahmi/elixirjobs)."},{"url":"http://elixirquiz.github.io/","size":1,"name":"Elixir Quiz","description":"Weekly programming problems to help you learn Elixir."},{"url":"http://www.elixre.uk/","size":1,"name":"Elixre","description":"An Elixir regular expression editor & tester."},{"url":"http://www.erlangpatterns.org/","size":1,"name":"Erlang Patterns","description":"Unlike traditional software design pattern efforts, which tend to emphasize the importance of code reuse, this project emphasizes patterns that feel good to humans."},{"url":"http://howistart.org/posts/elixir/1","size":1,"name":"How I start - Elixir","description":"Explanation and intro to Elixir by José Valim."},{"url":"http://learnelixir.com","size":1,"name":"Learn Elixir","description":"A blog with posts focusing on Elixir and Phoenix Framework."}]}]}