# riverrun/comeonin

Password hashing specification for the Elixir programming language

Repository: https://github.com/riverrun/comeonin
Canonical: https://ross.abutalabs.com/products/comeonin
Homepage: https://hex.pm/packages/comeonin
Language: Elixir
License: NOASSERTION
License Family: other
Topics: argon2, bcrypt, pbkdf2, elixir
Last push: 2025-02-03T22:34:40+00:00

## Health v2 (maintenance only)
Score: 34/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 4, release rhythm 35, longevity 100
- inputs: {"age_days": 4275, "days_push": 576, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1317, forks 62 (observed 2026-08-28T04:04:20.958081+00:00)

## What it is
Comeonin is a specification (behaviours) for password hashing libraries in Elixir, defining Comeonin and Comeonin.PasswordHash behaviours. Since version 5 it is a dependency of concrete hashing libraries like argon2_elixir, bcrypt_elixir, and pbkdf2_elixir rather than a tool used directly.

## Use cases
- hash user passwords securely in an Elixir app
- implement a custom password hashing library for Elixir
- swap between argon2, bcrypt, and pbkdf2 behind a common interface
- choose a password hashing algorithm for a Phoenix application
- avoid GPU-accelerated password cracking with argon2
- find a pure-Erlang password hashing option for Windows

## When to choose
- you are building a password hashing library for the Elixir ecosystem
- you want a common behaviour interface so hashing backends are swappable
- you need guidance on choosing argon2 vs bcrypt vs pbkdf2

## When to avoid
- you just need to hash passwords in an app - depend on argon2_elixir or bcrypt_elixir directly instead
- you need general-purpose cryptographic hashing like SHA-256 for non-password data
- you are not working in the Elixir/Erlang ecosystem

## Facets
- artifact type: library
- maturity: stable
- function: auth, cryptography, security
- domain: security, backend, web-development
- platform: windows, elixir
- tags: password-hashing, argon2, bcrypt, pbkdf2, elixir, behaviour-specification, linux, macos

## Member repositories
- riverrun/comeonin (main) score 34

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:20.958081+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:48:14.328587+00:00, confidence not recorded.
  - readme: https://github.com/riverrun/comeonin (fetched 2026-08-28T04:04:20.958081+00:00, sha c80a64abede7)
  - homepage: https://hex.pm/packages/comeonin (fetched 2026-08-29T12:06:47.217943+00:00, sha 8def725056bb)
  - site_page: https://hex.pm/docs (fetched 2026-08-29T12:06:47.222710+00:00, sha 3f449054c5e0)
  - site_page: https://hex.pm/about (fetched 2026-08-29T12:06:47.224484+00:00, sha 627eac420427)
  - site_page: https://hex.pm/docs/faq (fetched 2026-08-29T12:06:47.226267+00:00, sha 2914acf2582a)
  - site_page: https://hex.pm/pricing (fetched 2026-08-29T12:06:47.220767+00:00, sha b0a5082843ed)
- Data as of 2026-08-30T08:39:29.467469+00:00.
