{"id":18059223,"url":"https://github.com/flo-bit/uber-noise","last_synced_at":"2025-04-11T08:54:51.701Z","repository":{"id":173998739,"uuid":"650823871","full_name":"flo-bit/uber-noise","owner":"flo-bit","description":"advanced noise generation for the browser and node.js","archived":false,"fork":false,"pushed_at":"2024-09-29T02:07:22.000Z","size":378,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T06:31:46.328Z","etag":null,"topics":["browser","nodejs","noise","noise-generator","npm","typescript"],"latest_commit_sha":null,"homepage":"https://flo-bit.dev/uber-noise/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flo-bit.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-07T22:20:09.000Z","updated_at":"2025-03-14T10:26:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7afde52-de84-4c1b-96ec-628967808664","html_url":"https://github.com/flo-bit/uber-noise","commit_stats":null,"previous_names":["flo-bit/uber-noise"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flo-bit%2Fuber-noise","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flo-bit%2Fuber-noise/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flo-bit%2Fuber-noise/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flo-bit%2Fuber-noise/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flo-bit","download_url":"https://codeload.github.com/flo-bit/uber-noise/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248363423,"owners_count":21091352,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser","nodejs","noise","noise-generator","npm","typescript"],"created_at":"2024-10-31T03:10:38.484Z","updated_at":"2025-04-11T08:54:51.662Z","avatar_url":"https://github.com/flo-bit.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## uber-noise\n\nadvanced noise generation for the browser and node.js\n\n- written in typescript\n- seeded noise\n- based on simplex noise (2D, 3D and 4D)\n- fractal brownian motion (fbm)\n- custom gain, lacunarity, scale, shift, power\n- billowed, ridged, warped, stepped noise\n- seamless tiling noise (1D and 2D)\n- most options can be set to own noise instance\n\n## Install\n\n```bash\nnpm i uber-noise\n```\n\n```javascript\nimport UberNoise from \"uber-noise\";\n```\n\n## Usage\n\n### Basic\n\n### Get noise value\n\n```javascript\nconst noise = new UberNoise();\n\n// get noise value at x, y, z\nconst value = noise.get(x, y, z);\n// OR\nconst value = noise.get({x, y, z});\n```\n\n### Set noise options\n\n```javascript\n// simple fbm noise\nconst noise = new UberNoise({\n  scale: 0.01,\n  octaves: 4,\n  gain: 0.5,\n  lacunarity: 2.0,\n});\n```\n\n### Set noise options to noise instance\n\n```javascript\nconst noise = new UberNoise({\n  // this will set the scale to a noise instance returning values between 0.01 and 0.1\n  scale: { min: 0.01, max: 0.1, scale: 0.01 },\n});\n```\n\n### All options\n\n| Option        | Type                             | Default Value     | Description                                        |\n|---------------|----------------------------------|-------------------|----------------------------------------------------|\n| `seed`        | `string \\| number`               | `Math.random()`   | Seed for the noise, defaults to a random value.    |\n| `min`         | `number \\| UberNoise \\| NoiseOptions` | `-1`            | Minimum value of noise.                            |\n| `max`         | `number \\| UberNoise \\| NoiseOptions` | `1`             | Maximum value of noise.                            |\n| `scale`       | `number \\| UberNoise \\| NoiseOptions` | `1`             | Scale of the noise (\"zoom\" level).                 |\n| `power`       | `number \\| UberNoise \\| NoiseOptions` | `1`             | Power of the noise (1 = linear, 2 = quadratic).    |\n| `shift`       | `number[]`                       | `[0, 0, 0, 0]`    | Move noise in 2D, 3D, or 4D space.                 |\n| `octaves`     | `number`                         | `0`               | Number of layers for fbm noise.                    |\n| `gain`        | `number \\| UberNoise \\| NoiseOptions` | `0.5`           | Amplitude multiplier per fbm layer.                |\n| `lacunarity`  | `number \\| UberNoise \\| NoiseOptions` | `2`             | Scale multiplier per fbm layer.                    |\n| `amps`        | `number[]`                       | `[]`              | Array of custom amplitudes for each fbm layer.            |\n| `layers`      | `NoiseOptions[]`                 | `[]`              | Custom noise options for each fbm layer.           |\n| `sharpness`   | `number \\| UberNoise \\| NoiseOptions` | `0`             | Sharpness of noise (0 = normal, 1 = billowed, -1 = ridged). |\n| `steps`       | `number \\| UberNoise \\| NoiseOptions` | `0`             | Discretizes the noise into steps.                  |\n| `warp`        | `number \\| UberNoise \\| NoiseOptions` | `0`             | Amount to warp the noise.                          |\n| `warpNoise`   | `UberNoise`                      | `undefined`       | Custom noise used to warp the noise.               |\n| `warp2`       | `number \\| UberNoise \\| NoiseOptions` | `0`             | Second level of warping, only used if `warp` is used too.    |\n| `warpNoise2`  | `UberNoise`                      | `undefined`       | Second custom noise for additional warping.        |\n| `invert`      | `boolean`                        | `false`           | Invert the noise output.                           |\n| `abs`         | `boolean`                        | `false`           | Take the absolute value of the noise.              |\n| `clamp`       | `boolean`                        | `false`           | Clamp the noise between min and max values (otherwise noise might overflow slightly).        |\n| `tileX`       | `boolean`                        | `false`           | Tile the noise in the x direction.                 |\n| `tileY`       | `boolean`                        | `false`           | Tile the noise in the y direction.                 |\n| `tile`        | `boolean`                        | `false`           | Tile the noise in x and y directions (overwrites `tileX` and `tileY`)                 |\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflo-bit%2Fuber-noise","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflo-bit%2Fuber-noise","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflo-bit%2Fuber-noise/lists"}