# jwagner/simplex-noise.js

A fast simplex noise implementation in Javascript / Typescript.

Repository: https://github.com/jwagner/simplex-noise.js
Canonical: https://ross.abutalabs.com/products/simplex-noisejs
Language: TypeScript
License: MIT
License Family: permissive
Topics: javascript, noise-functions, simplex, demo, gfx, nodejs, procedural, procedural-art, procedural-generation, procedural-terrain, procedural-textures, typescript
Last push: 2024-07-26T17:06:06+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": 5139, "days_push": 768, "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 1848, forks 128 (observed 2026-08-28T04:05:43.651266+00:00)

## What it is
A fast, dependency-free simplex noise library in JavaScript/TypeScript supporting 2D, 3D, and 4D noise with optional seeding via a custom PRNG. It works in both the browser and Node.js, is tree-shakeable, and is very small (~2k minified+gzipped).

## Use cases
- generate procedural terrain for a game
- create procedural textures like wood grain
- add film grain to a video or image filter
- generate a 3D voxel world
- create plasma or animated background effects in the browser
- generate deterministic noise using a seed value
- add organic randomness to generative art

## When to choose
- you need fast simplex noise in JavaScript or TypeScript
- you want a tiny, dependency-free, tree-shakeable noise library
- you need 2D, 3D, or 4D noise with optional reproducible seeding
- you need noise that works in both browser and Node.js

## When to avoid
- you need Perlin noise or other noise variants specifically
- you need GPU/shader-based noise for high-performance graphics
- you need higher-dimensional noise beyond 4D
- you work outside the JavaScript ecosystem

## Facets
- artifact type: library
- maturity: stable
- function: graphics, data-generation, sdk
- domain: graphics
- platform: browser, cross-platform
- tags: simplex-noise, procedural-generation, noise-functions, seeded-random, tree-shakeable, dependency-free, 2d-3d-4d-noise, procedural-textures, procedural-terrain, game-development, nodejs, javascript, typescript

## Member repositories
- jwagner/simplex-noise.js (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:43.651266+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-30T03:17:48.577046+00:00, confidence not recorded.
  - readme: https://github.com/jwagner/simplex-noise.js (fetched 2026-08-28T04:05:43.651266+00:00, sha 6678d823af85)
- Data as of 2026-08-30T08:39:29.467469+00:00.
