# accounts-js/accounts

Fullstack authentication and accounts-management for Javascript.

Repository: https://github.com/accounts-js/accounts
Canonical: https://ross.abutalabs.com/products/accounts
Homepage: https://www.accountsjs.com/
Language: TypeScript
License: MIT
License Family: permissive
Topics: accounts, oauth, graphql, rest, password, sessions
Last push: 2024-03-08T10:44:12+00:00

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

## Adoption (not part of the score)
Stars 1502, forks 140 (observed 2026-08-28T04:04:54.392512+00:00)

## What it is
A suite of TypeScript packages providing fullstack authentication and accounts management for JavaScript applications, supporting GraphQL and REST transports with pluggable database adapters (Mongo, TypeORM, MikroORM) and auth strategies (password, OAuth, magic link). It handles user creation, JWT session management, email verification, and two-factor authentication with opinionated security defaults.

## Use cases
- add email/password login to a GraphQL API
- manage user accounts and JWT sessions in a Node.js app
- implement OAuth social login with GitHub or Google
- add two-factor authentication to a REST API
- store users in MongoDB or PostgreSQL with a flexible auth layer
- replace Meteor's accounts system in a non-Meteor JavaScript app

## When to choose
- you need a modular, database-agnostic auth solution for JavaScript/TypeScript
- your stack uses GraphQL or REST with Node.js backends
- you want Meteor-style accounts functionality without Meteor
- you need customizable user validation and multiple auth strategies

## When to avoid
- you need a fully turnkey hosted auth provider with zero setup
- your project is not JavaScript/TypeScript based
- you cannot tolerate breaking changes between minor versions
- you need mature, battle-tested OAuth support out of the box

## Facets
- artifact type: library
- maturity: active
- function: auth, graphql, http-server, middleware
- domain: web-development, backend, security, apis
- platform: -
- tags: authentication, user-management, jwt, oauth, password-auth, sessions, mongo, typeorm, mikroorm, fullstack, express, two-factor-authentication, magic-link, session-management, nodejs, typescript, javascript

## Member repositories
- accounts-js/accounts (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:54.392512+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:32:51.799453+00:00, confidence not recorded.
  - readme: https://github.com/accounts-js/accounts (fetched 2026-08-28T04:04:54.392512+00:00, sha bf2a10e98fa9)
  - homepage: https://www.accountsjs.com/ (fetched 2026-08-29T11:38:13.029926+00:00, sha 0e81480f3fd0)
  - site_page: https://www.accountsjs.com/docs/transports/rest-express (fetched 2026-08-29T11:38:13.036070+00:00, sha 848d2aef74bd)
  - site_page: https://www.accountsjs.com/docs/introduction (fetched 2026-08-29T11:38:13.032320+00:00, sha 52aa163c1fab)
  - site_page: https://www.accountsjs.com/docs/transports/graphql (fetched 2026-08-29T11:38:13.034226+00:00, sha 4ce4cc20c016)
  - site_page: https://www.accountsjs.com/docs/databases/mongo (fetched 2026-08-29T11:38:13.037611+00:00, sha 2129ad2cb7b2)
  - site_page: https://www.accountsjs.com/docs/databases/typeorm (fetched 2026-08-29T11:38:13.039218+00:00, sha 820cfe090aad)
  - site_page: https://www.accountsjs.com/docs/strategies/password (fetched 2026-08-29T11:38:13.040745+00:00, sha a43acacfb678)
  - site_page: https://www.accountsjs.com/docs/strategies/oauth (fetched 2026-08-29T11:38:13.042281+00:00, sha 55f1a5361c80)
- Data as of 2026-08-30T08:39:29.467469+00:00.
