{"id":31041040,"url":"https://github.com/rustsmith/rustsmith","last_synced_at":"2025-09-14T09:03:04.606Z","repository":{"id":37558609,"uuid":"441308439","full_name":"rustsmith/rustsmith","owner":"rustsmith","description":"A randomized program fuzzer for the Rust programming language","archived":false,"fork":false,"pushed_at":"2023-07-21T10:25:49.000Z","size":351,"stargazers_count":53,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-07-30T18:35:11.482Z","etag":null,"topics":["differential-testing","fuzzing","rust"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rustsmith.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-23T22:22:37.000Z","updated_at":"2024-06-19T06:33:22.000Z","dependencies_parsed_at":"2023-01-19T12:32:59.731Z","dependency_job_id":null,"html_url":"https://github.com/rustsmith/rustsmith","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"purl":"pkg:github/rustsmith/rustsmith","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustsmith%2Frustsmith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustsmith%2Frustsmith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustsmith%2Frustsmith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustsmith%2Frustsmith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rustsmith","download_url":"https://codeload.github.com/rustsmith/rustsmith/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustsmith%2Frustsmith/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275082396,"owners_count":25402340,"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","status":"online","status_checked_at":"2025-09-14T02:00:10.474Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["differential-testing","fuzzing","rust"],"created_at":"2025-09-14T09:01:58.174Z","updated_at":"2025-09-14T09:03:04.581Z","avatar_url":"https://github.com/rustsmith.png","language":"Kotlin","funding_links":[],"categories":["Dynamic Checkers"],"sub_categories":[],"readme":"[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)\n[![Release CI](https://github.com/rustsmith/rustsmith/actions/workflows/release.yml/badge.svg)](https://github.com/rustsmith/rustsmith/actions/workflows/release.yml)\n![Version](https://img.shields.io/github/v/release/rustsmith/rustsmith?label=version)\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Frustsmith%2Frustsmith.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Frustsmith%2Frustsmith?ref=badge_shield)\n\n## RustSmith: A randomized program generator for Rust\n\nRustSmith is a fuzzer built for the [Rust](https://www.rust-lang.org) programming language with\nthe purpose of fuzzing the Rust compiler (rustc) and find compiler crashes and mis-compilations\nwithin the compiler. This repo contains the source code of the generator along with information on\nhow to install and use it.\n\n## Table of Contents:\n\n- [Getting Started](#getting-started)\n- [Building From Source](#building-from-source)\n- [Usage](#usage)\n- [Documentation](#documentation)\n- [Contributing](#contributing)\n\n## Getting Started\n\nTo get started with RustSmith, there are a couple of options as shown below:\n\n### Recommended Method\n\nTo download and install RustSmith, the recommended method is to simply download the \"RustSmith\nExecutable\" from the latest release from the \"Releases\" panel on the right.\n\nRustSmith can then be invoked as below:\n\n```shell\n    ./rustsmith --help\n```\n\n### Docker\n\nDocker can also be used in the following way using the latest docker image:\n\n```shell\ndocker run --rm ghcr.io/rustsmith/rustsmith --help\n```\n\n### Running RustSmith using the JAR File\n\nAlternatively, the JAR file in the releases can be downloaded and used instead. RustSmith would then\nbe invoked as:\n\n```shell\n    java -jar RustSmith-1.0-SNAPSHOT-all.jar\n```\n\n## Building from Source\n\nTo build RustSmith from source, an installation of Java 15 is required. More information for\ninstalling OpenJDK 15 can be found on the [OpenJDK Website](https://openjdk.java.net).\n\nBuilding and executing RustSmith can then be done as follows:\n\n```shell\n    git clone git@github.com:rustsmith/rustsmith.git\n    cd rustsmith\n    ./gradlew build\n```\n\nThis will create both the standalone executable under `./run/rustsmith` and the packaged JAR file\nunder `./build/libs/RustSmith-1.0-SNAPSHOT-all.jar` which can then be executed as described above.\n\n## Usage\n\n```shell\nUsage: rustsmith [OPTIONS]\n\nOptions:\n  -n, -count INT    No. of files to generate\n  -p, -print        Print out program only\n  -f, -fail-fast    Use fail fast approach\n  -s, -seed INT     Optional Seed\n  --directory TEXT  Directory to save files\n  -h, --help        Show this message and exit\n```\n\n## Documentation\n\nDocumentation is available at: https://rustsmith.github.io/docs ! \n\n## Contributing\n\nContributions are all welcome! If you would like to contribute, please see the\ncorresponding [guidelines][contributing]. By contributing, you are agreeing to\nour [code of conduct][code-of-conduct].\n\n[contributing]: https://github.com/rustsmith/rustsmith/blob/master/CONTRIBUTING.md\n\n[code-of-conduct]: https://github.com/rustsmith/rustsmith/blob/master/CODE_OF_CONDUCT.md\n\n\n## License\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Frustsmith%2Frustsmith.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Frustsmith%2Frustsmith?ref=badge_large)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustsmith%2Frustsmith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frustsmith%2Frustsmith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustsmith%2Frustsmith/lists"}