{"id":15907956,"url":"https://github.com/razaekel/noise-rs","last_synced_at":"2026-04-06T06:04:12.723Z","repository":{"id":9780808,"uuid":"11753937","full_name":"Razaekel/noise-rs","owner":"Razaekel","description":"Procedural noise generation library for Rust.","archived":false,"fork":false,"pushed_at":"2025-02-14T03:15:59.000Z","size":37824,"stargazers_count":971,"open_issues_count":43,"forks_count":128,"subscribers_count":11,"default_branch":"develop","last_synced_at":"2025-05-13T13:09:52.117Z","etag":null,"topics":["gradient-noise","noise","perlin-noise","procedural-generation","rust"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Razaekel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","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":"2013-07-30T01:42:23.000Z","updated_at":"2025-05-13T02:39:04.000Z","dependencies_parsed_at":"2025-02-24T11:00:33.584Z","dependency_job_id":"4ad3dd0c-cbc6-4cf6-aa0f-5a1664b782c2","html_url":"https://github.com/Razaekel/noise-rs","commit_stats":{"total_commits":496,"total_committers":48,"mean_commits":"10.333333333333334","dds":0.5987903225806452,"last_synced_commit":"4fea5f6156bd0b142495a99fe1995502bfe473d6"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Razaekel%2Fnoise-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Razaekel%2Fnoise-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Razaekel%2Fnoise-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Razaekel%2Fnoise-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Razaekel","download_url":"https://codeload.github.com/Razaekel/noise-rs/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253948447,"owners_count":21988959,"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":["gradient-noise","noise","perlin-noise","procedural-generation","rust"],"created_at":"2024-10-06T14:07:33.710Z","updated_at":"2025-12-17T07:36:51.054Z","avatar_url":"https://github.com/Razaekel.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- PROJECT BADGES --\u003e\n\u003c!--\n*** I'm using markdown \"reference style\" links for readability.\n*** Reference links are enclosed in brackets [ ] instead of parentheses ( ).\n*** See the bottom of this document for the declaration of the reference variables\n*** for contributors-url, forks-url, etc. This is an optional, concise syntax you may use.\n*** https://www.markdownguide.org/basic-syntax/#reference-style-links\n--\u003e\n[![Github Link][github badge]][github link]\n[![CI Status][ci badge]][ci link]\n[![Documentation][docs badge]][docs link]\n[![Version][crates.io version]][crates.io link]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003c!-- a href=\"https://github.com/razaekel/noise-rs\"\u003e\n    \u003cimg src=\"images/logo.png\" alt=\"Logo\" width=\"80\" height=\"80\"\u003e\n  \u003c/a--\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eNoise-rs\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\nProcedural Noise Generation library \u003ci\u003efor Rust\u003c/i\u003e\n\u003cbr /\u003e\n\u003ca href=\"https://docs.rs/noise\"\u003e\u003cstrong\u003eExplore the docs »\u003c/strong\u003e\u003c/a\u003e\n\u003cbr /\u003e\n\u003cbr /\u003e\n\u003c!--a href=\"https://github.com/razaekel/noise-rs\"\u003eView Demo\u003c/a\u003e·--\u003e\n\u003ca href=\"https://github.com/razaekel/noise-rs/issues\"\u003eReport Bug\u003c/a\u003e -\n\u003ca href=\"https://github.com/razaekel/noise-rs/issues\"\u003eRequest Feature\u003c/a\u003e\n\u003c/p\u003e\n\n```toml\n[dependencies]\nnoise = \"0.9\"\n```\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n\n## About The Project\n\nNoise-rs is a Rust library to generate smoothly varying noise for textural use and graphical display.\n\nNoise generators are contained in `NoiseFn` modules, and can be combined to make very complex noise results.\n\n### Planetary Surface Example\n\n![planet surface image]\n![planet surface 4x]\n![planet surface 16x]\n\n### Gradient Noise\n\nGradient noise produces a smooth, continuous value over space. It's achieved by\ndividing space into regions, placing a random gradient at each vertex, and then\nblending between those gradients.\n\n#### Noise Functions\n\nThese are the actual noise functions, which just take a coordinate using `get()` and return\na value. They can be chained together when declared, creating very complex noise results.\n\nSee the individual function pages for their descriptions, and the [examples][examples link] for their usage.\n\n\u003c!-- USAGE EXAMPLES --\u003e\n\n## Usage\n\nTo use the function `write_to_file` you have to set the feature `\"images\"` in the `Cargo.toml`\n\n```toml\n[dependencies]\nnoise = { version = \"0.9.0\", features = [\"images\"] }\n```\n\n```rust\nuse noise::{Fbm, Perlin};\nuse noise::utils::{NoiseMapBuilder, PlaneMapBuilder};\n\nfn main() {\n  let fbm = Fbm::\u003cPerlin\u003e::new(0);\n\n  PlaneMapBuilder::\u003c_, 2\u003e::new(\u0026fbm)\n          .set_size(1000, 1000)\n          .set_x_bounds(-5.0, 5.0)\n          .set_y_bounds(-5.0, 5.0)\n          .build()\n          .write_to_file(\"fbm.png\");\n}\n```\n\n![FBM Noise][fbm image]\n\n_For more examples, refer to the [Examples][examples link]_\n\n\u003c!-- ROADMAP --\u003e\n\n## Roadmap\n\nSee the [open issues][issues link] for a list of proposed features (and known issues).\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any\ncontributions you make are **greatly appreciated**.\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you shall be dual licensed as below, without any\nadditional terms or conditions.\n\n\u003c!-- LICENSE --\u003e\n\n## License\n\nLicensed under either of\n\n* Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n\u003c!-- CONTACT --\u003e\n\n## Contact\n\nProject Link: [https://github.com/razaekel/noise-rs][github link]\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n\n[ci link]: https://github.com/razaekel/noise-rs/actions\n\n[ci badge]: https://img.shields.io/github/actions/workflow/status/razaekel/noise-rs/rust.yml?style=for-the-badge\u0026logo=github-actions\u0026logoColor=white\n\n[crates.io link]: https://crates.io/crates/noise\n\n[crates.io version]: https://img.shields.io/crates/v/noise.svg?style=for-the-badge\u0026logo=rust\n\n[docs link]: https://docs.rs/noise\n\n[docs badge]: https://img.shields.io/badge/docs-online-5023dd.svg?style=for-the-badge\u0026logoColor=white\u0026logo=data:image/svg+xml;base64,PHN2ZyByb2xlPSJpbWciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDUxMiA1MTIiPjxwYXRoIGZpbGw9IiNmNWY1ZjUiIGQ9Ik00ODguNiAyNTAuMkwzOTIgMjE0VjEwNS41YzAtMTUtOS4zLTI4LjQtMjMuNC0zMy43bC0xMDAtMzcuNWMtOC4xLTMuMS0xNy4xLTMuMS0yNS4zIDBsLTEwMCAzNy41Yy0xNC4xIDUuMy0yMy40IDE4LjctMjMuNCAzMy43VjIxNGwtOTYuNiAzNi4yQzkuMyAyNTUuNSAwIDI2OC45IDAgMjgzLjlWMzk0YzAgMTMuNiA3LjcgMjYuMSAxOS45IDMyLjJsMTAwIDUwYzEwLjEgNS4xIDIyLjEgNS4xIDMyLjIgMGwxMDMuOS01MiAxMDMuOSA1MmMxMC4xIDUuMSAyMi4xIDUuMSAzMi4yIDBsMTAwLTUwYzEyLjItNi4xIDE5LjktMTguNiAxOS45LTMyLjJWMjgzLjljMC0xNS05LjMtMjguNC0yMy40LTMzLjd6TTM1OCAyMTQuOGwtODUgMzEuOXYtNjguMmw4NS0zN3Y3My4zek0xNTQgMTA0LjFsMTAyLTM4LjIgMTAyIDM4LjJ2LjZsLTEwMiA0MS40LTEwMi00MS40di0uNnptODQgMjkxLjFsLTg1IDQyLjV2LTc5LjFsODUtMzguOHY3NS40em0wLTExMmwtMTAyIDQxLjQtMTAyLTQxLjR2LS42bDEwMi0zOC4yIDEwMiAzOC4ydi42em0yNDAgMTEybC04NSA0Mi41di03OS4xbDg1LTM4Ljh2NzUuNHptMC0xMTJsLTEwMiA0MS40LTEwMi00MS40di0uNmwxMDItMzguMiAxMDIgMzguMnYuNnoiPjwvcGF0aD48L3N2Zz4K\n\n[examples link]: /examples/\n\n[fbm image]: /images/fbm.png\n\n[github badge]: https://img.shields.io/badge/github-razaekel/noise--rs-8da0cb?style=for-the-badge\u0026logo=github\n\n[github link]: https://github.com/razaekel/noise-rs\n\n[issues link]: https://github.com/razaekel/noise-rs/issues\n\n[planet surface image]: /images/unscaledFinalPlanet.png\n\n[planet surface 4x]: /images/unscaledFinalPlanet_4x_zoom.png\n\n[planet surface 16x]: /images/unscaledFinalPlanet_16x_zoom.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frazaekel%2Fnoise-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frazaekel%2Fnoise-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frazaekel%2Fnoise-rs/lists"}