uuid

RFC9562-compliant UUID generation for JavaScript and TypeScript.

Library
npm
v14.0.3
15,337 stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
71 /100 Good
Development Activity 72
Maintenance 44
Community 68
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
88 /100 Excellent
Architecture 85
Code Quality 85
Innovation 90
Learning Curve 90

uuid is the de facto standard library for generating RFC9562 (formerly RFC4122) compliant UUIDs in JavaScript and TypeScript. It supports all major UUID versions — v1, v3, v4, v5, v6, and v7 — along with parsing, stringifying, and validation utilities, and ships as a zero-dependency, tree-shakable package that runs identically in Node.js, browsers, and React Native/Expo.

With hundreds of millions of weekly downloads, uuid is one of the most widely used packages in the npm ecosystem, trusted by countless libraries and applications that need collision-resistant unique identifiers for database keys, distributed systems, session tokens, and more.

What You Get

  • All RFC9562 UUID versions — v1 (timestamp), v3/v5 (namespace-based), v4 (random), v6/v7 (sortable timestamp) — in one package
  • Zero runtime dependencies and full tree-shaking support for minimal bundle size
  • Cross-platform support for Node.js, browsers (Chrome/Safari/Firefox/Edge), and React Native/Expo
  • A command-line uuid utility for generating IDs from the terminal
  • TypeScript types included out of the box, with parse/stringify helpers for working with raw UUID bytes

Common Use Cases

  • Generating primary keys for database records without a central ID authority
  • Creating unique session, request, or correlation IDs for distributed tracing
  • Producing deterministic namespaced IDs (v5) for content-addressable identifiers
  • Generating sortable, timestamp-ordered IDs (v7) for high-write database indexes

Under The Hood

Architecture uuid is organized as one small, focused module per concern: each UUID version (v1.ts, v3.ts, v4.ts, v5.ts, v6.ts, v7.ts) lives in its own file and shares common primitives from rng.ts (entropy via crypto.getRandomValues), stringify.ts/parse.ts (byte-array <-> string conversion), and validate.ts (regex-based format checking), all re-exported from a single src/index.ts barrel. Version-specific logic is kept deliberately thin — for example v4.ts fast-paths to the native crypto.randomUUID() when no options or buffer are supplied, falling back to a manually-assembled byte array otherwise — so the library adds almost no overhead over the platform primitives it wraps.

Tech Stack The package is written in TypeScript and compiled to dual ESM/CommonJS-free output (CommonJS support was dropped at v12), targeting native crypto APIs in both Node.js and browsers rather than any userland polyfill. It has zero runtime dependencies; devDependencies are limited to build and quality tooling (TypeScript, Biome for lint/format, Jest and Node’s built-in test runner, WebdriverIO for cross-browser testing, and release-please for versioned releases), keeping the installed footprint of the published package minimal.

Code Quality The src/test directory holds a dedicated spec file for nearly every module (v1, v4, v6, v7, parse, stringify, validate, version, rng, v35), and the maintainers additionally exercise the library end-to-end via examples/ projects covering Node ESM, Jest, TypeScript, and multiple browser bundlers (Rollup, Webpack). Source files are short, single-purpose, and typed throughout, with inline comments flagging performance-sensitive code paths (e.g. the hand-tuned hex-lookup table in stringify.ts) that intentionally trade some readability for measured speed gains.

API Design The public API is extremely low-friction: importing a single named function per UUID version (v4(), v5(), etc.) and calling it with no arguments returns a valid UUID string, with optional parameters available for advanced use (custom entropy, writing into an existing buffer). Naming is consistent across the whole surface (parse/stringify, v1ToV6/v6ToV1, validate/version), and the README documents every export with a runnable example, so getting from npm install to a working UUID takes two lines of code.

Used by 172 apps in this directory

Ruby
66%
Other

GitLab

Developer Tools · Devops

24,553

The complete DevOps platform that unifies Git hosting, CI/CD, issue tracking, and security scanning into a single self-hostable application.

View details
87
Repo Health
86
Technical
67
Dependency
Built with
Ruby 66%
JavaScript 20%
Updated today
TypeScript
91%
Other

GitNexus

AI Code Assistants · Developer Tools · Mcp

47,815

Index any codebase into an interactive knowledge graph and give your AI agents deep architectural context via MCP — with zero servers required.

View details
88
Repo Health
86
Technical
73
Dependency
Built with
TypeScript 91%
Updated today
TypeScript
83%
Apache 2.0

Grist

Databases · No Code Platforms

11,923

A modern relational spreadsheet that combines Python-powered formulas, drag-and-drop dashboards, and granular access controls in a self-hostable, SQLite-backed data platform.

View details
91
Repo Health
93
Technical
62
Dependency
Built with
TypeScript 83%
Python 11%
Updated yesterday
TypeScript
98%
Other

GrowthBook

Ab Testing Experimentation · Analytics · Developer Tools

8,485

Open source feature flags, A/B testing, and warehouse-native experimentation that queries your existing data infrastructure—no data movement required.

View details
92
Repo Health
85
Technical
63
Dependency
Built with
TypeScript 98%
Updated yesterday
Go
86%
MIT

Hatchet

AI Development · Automation · Developer Tools

8,091

A Postgres-backed orchestration engine for background tasks, AI agents, and durable workflows that replaces Redis queues and multi-datastore durable execution platforms with a single self-hostable service.

View details
88
Repo Health
83
Technical
67
Dependency
Built with
Go 86%
Updated yesterday
TypeScript
91%
Apache 2.0

Helicone

AI Development · Analytics · Monitoring

6,211

An open-source AI gateway and LLM observability platform that routes requests to 100+ models while logging cost, latency, and full traces for every call.

View details
72
Repo Health
81
Technical
65
Dependency
Built with
TypeScript 91%
Updated today
TypeScript
95%
AGPL 3.0

HeyForm

Forms Surveys · No Code Platforms

9,005

Open-source conversational form builder with AI generation, conditional logic, and 30+ integrations — self-host with full data ownership.

View details
86
Repo Health
67
Technical
67
Dependency
Built with
TypeScript 95%
Updated today
TypeScript
99%
MIT

GraphQL Hive

Developer Tools · Devops · Monitoring

484

Open-source GraphQL schema registry and observability platform with breaking change detection, federation support, and CI/CD integration for teams of any size.

View details
90
Repo Health
81
Technical
69
Dependency
Built with
TypeScript 99%
Updated today
TypeScript
68%
MIT

Hoppscotch

Developer Tools

80,589

A lightweight, offline-capable API development ecosystem for testing HTTP, GraphQL, WebSocket, MQTT, and SSE endpoints across web, desktop, and CLI.

View details
90
Repo Health
83
Technical
62
Dependency
Built with
TypeScript 68%
Vue 24%
Updated 3 days ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers