# elixir-horde/horde

Horde is a distributed Supervisor and Registry backed by Postgres

Repository: https://github.com/elixir-horde/horde
Canonical: https://ross.abutalabs.com/products/horde
Language: Elixir
License: MIT
License Family: permissive
Topics: cluster, registry, supervisor, elixir
Last push: 2026-07-31T15:48:34+00:00

## Health v2 (maintenance only)
Score: 70/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 95, release rhythm 22, longevity 100
- inputs: {"age_days": 3039, "days_push": 33, "days_rel": 307, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1494, forks 119 (observed 2026-08-28T04:04:52.821082+00:00)

## What it is
Horde is an Elixir library providing a distributed supervisor (Horde.DynamicSupervisor) and distributed registry (Horde.Registry) built on DeltaCrdt, enabling multi-node Elixir applications with dynamic cluster membership. It closely mirrors the APIs of Elixir's standard library Supervisor and Registry for near drop-in replacement.

## Use cases
- distribute supervised processes across multiple Elixir nodes
- run a distributed process registry in a cluster
- build a fault-tolerant clustered Elixir application
- replace Registry and Supervisor with distributed versions
- handle dynamic node joins and leaves in a BEAM cluster
- supervise processes cluster-wide with a hash ring

## When to choose
- you need distributed supervision or a distributed registry in Elixir
- your cluster membership changes dynamically and you need eventual consistency
- you want an API close to Elixir's standard Supervisor/Registry

## When to avoid
- you only need a single global singleton process (use Highlander instead)
- you need strong, immediate consistency rather than CRDT-based eventual consistency
- you rely on Registry features like keys: :duplicate

## Facets
- artifact type: library
- maturity: active
- function: concurrency, microservices, middleware
- domain: microservices, backend, developer-tools
- platform: elixir, jvm, cross-platform
- tags: distributed-supervisor, distributed-registry, crdt, hash-ring, fault-tolerance, clustering, process-management

## Member repositories
- elixir-horde/horde (main) score 70

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:52.821082+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:33:21.672229+00:00, confidence not recorded.
  - readme: https://github.com/elixir-horde/horde (fetched 2026-08-28T04:04:52.821082+00:00, sha 95a8a9eac31c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
