Packages

The package manager
for the Erlang ecosystem

Getting Started Publish Packages
Elixir

Specify your Mix dependencies as two-item tuples like {:plug, "~> 1.19"} in your dependency list, Elixir will ask if you want to install Hex if you haven't already.

Erlang

Download rebar3, put it in your PATH and give it executable permissions. Now you can specify Hex dependencies in your rebar.config like {deps, [hackney]}.

Gleam

Add the Hex dependency to your gleam.toml file using the lustre = ">= 5.2.0 and < 6.0.0" format. Or use the gleam add lustre@5 command.

Getting started

Fetch dependencies from Hex without creating an account. Hex is usable out of the box in Elixir with Mix and in Erlang with Rebar3 . Check our FAQ for commonly asked questions.

Publish packages

Create an account and follow the publishing guide . Your package will be immediately available to all Elixir and Erlang users and the documentation will be available on HexDocs .

Private packages

Publish private packages by creating an organization . Private packages cost $9 / user / month after a free 30-day trial and include fast dependency fetching and HexDocs on the same reliable infrastructure that serves millions of packages daily. See our pricing page for more details.

Dependency policies

Keep dependency rules consistent across projects with signed, organization-managed policies. Free organizations can publish public policies for public Hex packages. Paid organizations can also publish private policies covering public and private packages, visible only to organization members. See the policy guide for details.

Most Downloaded

  • jason 1.4.5

    A blazing fast JSON parser and generator in pure Elixir.

    7.2M
  • Dynamic dispatching library for metrics and instrumentations

    5.8M
  • decimal 3.1.1

    Arbitrary precision decimal arithmetic.

    5.1M
  • Crypto-related functionality for the web

    5M
  • plug 1.20.3

    Compose web applications with functions

    4.9M
  • mime 2.0.7

    A MIME type module for Elixir

    4.9M

New Packages

  • listex 0.1.0

    One process per list: concurrent list editing with stable ids, arrival-order conflict resolution ...

    3 minutes ago
  • Attesto-native MCP server with modern and legacy transports

    8 hours ago
  • eta 0.1.0

    Deterministic simulation testing for the BEAM: a serializing scheduler, a virtual clock, and a dr...

    9 hours ago
  • Elixir error reporting client for a private, self-hosted ForgeOps tracker instance.

    10 hours ago
  • N+1 query detection for Ecto

    11 hours ago
  • tidb 0.1.0

    TiDB Vector Search and Ecto integration for Elixir applications

    14 hours ago

Recently Updated

  • An Ash extension for explicit idempotency and one-time nonce semantics

    2 minutes ago
  • listex 0.1.0

    One process per list: concurrent list editing with stable ids, arrival-order conflict resolution ...

    3 minutes ago
  • wymcp 0.2.1

    Model Context Protocol server library for Elixir with Plug integration

    17 minutes ago
  • Tempo blockchain primitives for Elixir — 0x76 transactions, TIP-20 tokens, RPC broadcasting, an...

    18 minutes ago
  • JavaScript bridge for Ethereum — run npm packages (solc-js, Uniswap SDK, DeFiSaver) on the BEAM...

    18 minutes ago
  • onchain 0.14.0

    Shared Ethereum/blockchain library for read (eth_call) and write (transaction signing) operations...

    21 minutes ago
Open Source

hex.pm is
open-source

Hex.pm interface
26 179 packages available
260 620 package versions
7 658 652 downloads yesterday
15 607 053 824 downloads all time