Poison is a fast and lightweight JSON library for Elixir focused on performance and idiomatic APIs. It provides straightforward encode and decode functions, along with a protocol-based encoder that lets you customize how your structs become JSON. Developers can derive or implement Poison.Encoder for domain types, control which fields are included, and map complex values into JSON-friendly forms. On the decoding side, it supports options for key handling and flexible parsing of JSON into Elixir maps, lists, and primitive values. Internally it uses optimized binary processing to keep allocations low and throughput high, which is why it became a popular choice in early Elixir ecosystems. The API is intentionally small and unsurprising, making it easy to drop into controllers, background jobs, or data pipelines. Many codebases still rely on Poison for its speed and simplicity, even as alternative JSON libraries exist in the community.

Features

  • High‑performance JSON encoding/decoding
  • Pure Elixir implementation with no external dependencies
  • Hand‑rolled parser optimized for BEAM and JIT benefits
  • Single‑pass decoding for speed and efficiency
  • Full compliance with JSON standards (RFC 8259, ECMA 404)
  • Modular components (encoder, decoder, parser) usable independently

Project Samples

Project Activity

See All Activity >

License

BSD License

Follow Poison

Poison Web Site

You Might Also Like
Gen AI apps are built with MongoDB Atlas Icon
Gen AI apps are built with MongoDB Atlas

The database for AI-powered applications.

MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Poison!

Additional Project Details

Programming Language

Elixir

Registered

2025-09-01