Poison, the extremely fast and standards compliant JSON library for Elixir:
Poison is a JSON library for Elixir focusing on wicked-fast speed without sacrificing simplicity, completeness, or correctness.
Poison takes several approaches to be the fastest JSON library for Elixir.
Poison uses extensive sub binary matching, a hand-rolled parser using several techniques that are known to benefit BeamAsm for JIT compilation, IO list encoding and single-pass decoding.
Poison benchmarks sometimes puts Poison’s performance close to
jiffy
and usually faster than other Erlang/Elixir libraries.Poison fully conforms to RFC 8259, ECMA 404, and fully passes the JSONTestSuite.
v6.0.0 has just been released and packs a lot of new features, bug fixes and performance improvements over the previous release. It’s probably best to reference the CHANGELOG for more information.
Poison was already very performant in 5.0.0, but now Poison takes a sizable lead over other pure Elixir JSON libraries (namely Jason) when parsing and also on encoding workloads that include a lot of UTF-8 strings (both native and encoded).
Enjoy!