{"id":18560957,"url":"https://github.com/artichoke/rand_mt","last_synced_at":"2026-02-11T08:12:52.166Z","repository":{"id":38962750,"uuid":"247368341","full_name":"artichoke/rand_mt","owner":"artichoke","description":"🌪 Mersenne Twister implementation backed by rand_core","archived":false,"fork":false,"pushed_at":"2025-04-08T00:06:34.000Z","size":2418,"stargazers_count":13,"open_issues_count":5,"forks_count":6,"subscribers_count":5,"default_branch":"trunk","last_synced_at":"2025-04-10T01:09:35.839Z","etag":null,"topics":["artichoke","mersenne-twister","no-std","rand","random","rng","rust","rust-crate"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/rand_mt","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/artichoke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2020-03-14T23:18:59.000Z","updated_at":"2025-03-03T22:54:20.000Z","dependencies_parsed_at":"2023-09-26T04:48:44.609Z","dependency_job_id":"528a8fcb-5f8d-4d53-b477-8f424e829675","html_url":"https://github.com/artichoke/rand_mt","commit_stats":{"total_commits":367,"total_committers":8,"mean_commits":45.875,"dds":0.4877384196185286,"last_synced_commit":"697446bd8bbac735f3b269f7b52f02ea08b9b078"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artichoke%2Frand_mt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artichoke%2Frand_mt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artichoke%2Frand_mt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artichoke%2Frand_mt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/artichoke","download_url":"https://codeload.github.com/artichoke/rand_mt/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137886,"owners_count":21053775,"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":["artichoke","mersenne-twister","no-std","rand","random","rng","rust","rust-crate"],"created_at":"2024-11-06T22:05:17.964Z","updated_at":"2026-02-11T08:12:52.161Z","avatar_url":"https://github.com/artichoke.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rand_mt\n\n[![GitHub Actions](https://github.com/artichoke/rand_mt/workflows/CI/badge.svg)](https://github.com/artichoke/rand_mt/actions)\n[![Code Coverage](https://codecov.artichokeruby.org/rand_mt/badges/flat.svg?nocache=2)](https://codecov.artichokeruby.org/rand_mt/index.html)\n[![Twitter](https://img.shields.io/twitter/follow/artichokeruby?label=Follow\u0026style=social)](https://twitter.com/artichokeruby)\n\u003cbr\u003e\n[![Crate](https://img.shields.io/crates/v/rand_mt.svg)](https://crates.io/crates/rand_mt)\n[![API](https://docs.rs/rand_mt/badge.svg)](https://docs.rs/rand_mt)\n[![API trunk](https://img.shields.io/badge/docs-trunk-blue.svg)](https://artichoke.github.io/rand_mt/rand_mt/)\n\nImplements a selection of Mersenne Twister random number generators.\n\n\u003e A very fast random number generator of period 2\u003csup\u003e19937\u003c/sup\u003e-1. (Makoto\n\u003e Matsumoto, 1997).\n\nThe Mersenne Twister algorithms are not suitable for cryptographic uses, but are\nubiquitous. See the [Mersenne Twister website]. A variant of Mersenne Twister is\nthe [default PRNG in Ruby].\n\n[mersenne twister website]:\n  http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html\n[default prng in ruby]: https://ruby-doc.org/core-3.1.2/Random.html\n\nThis crate optionally depends on [`rand_core`] and implements `Rng` on the RNGs\nin this crate.\n\n[`rand_core`]: https://crates.io/crates/rand_core\n\n## Usage\n\nAdd this to your `Cargo.toml`:\n\n```toml\n[dependencies]\nrand_mt = \"6.0.0\"\n```\n\nThen create a RNG like:\n\n```rust\nuse rand_mt::Mt64;\n\nlet mut rng = Mt64::new_unseeded();\nassert_ne!(rng.next_u64(), rng.next_u64());\n```\n\n## Crate Features\n\n`rand_mt` is `no_std` compatible. `rand_mt` has several optional features that\nare enabled by default:\n\n- **rand-traits** - Enables a dependency on [`rand_core`]. Activating this\n  feature implements `Rng` and `SeedableRng` on the RNGs in this crate.\n\nMersenne Twister requires approximately 2.5 kilobytes of internal state. To make\nthe RNGs implemented in this crate practical to embed in other structs, you may\nwish to store the RNG in a `Box`.\n\n### Minimum Supported Rust Version\n\nThis crate requires at least Rust 1.85.0. This version can be bumped in minor\nreleases.\n\n## License\n\n`rand_mt` is distributed under the terms of either the\n[MIT License](LICENSE-MIT) or the\n[Apache License (Version 2.0)](LICENSE-APACHE).\n\n`rand_mt` is derived from `rust-mersenne-twister` @ [`1.1.1`] which is Copyright\n(c) 2015 rust-mersenne-twister developers.\n\n[`1.1.1`]: https://github.com/dcrewi/rust-mersenne-twister/tree/1.1.1\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartichoke%2Frand_mt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fartichoke%2Frand_mt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartichoke%2Frand_mt/lists"}