{"id":21214485,"url":"https://github.com/slice/havoc","last_synced_at":"2025-10-14T18:18:00.941Z","repository":{"id":83250326,"uuid":"361596678","full_name":"slice/havoc","owner":"slice","description":"discord client instrumentation toolkit","archived":false,"fork":false,"pushed_at":"2023-11-04T07:06:28.000Z","size":876,"stargazers_count":32,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-10T08:39:08.250Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","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/slice.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":"2021-04-26T02:44:10.000Z","updated_at":"2024-09-18T11:43:45.000Z","dependencies_parsed_at":"2024-11-20T21:40:23.065Z","dependency_job_id":null,"html_url":"https://github.com/slice/havoc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/slice/havoc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slice%2Fhavoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slice%2Fhavoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slice%2Fhavoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slice%2Fhavoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slice","download_url":"https://codeload.github.com/slice/havoc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slice%2Fhavoc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279020349,"owners_count":26086864,"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-10-14T02:00:06.444Z","response_time":60,"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":[],"created_at":"2024-11-20T21:28:08.694Z","updated_at":"2025-10-14T18:18:00.925Z","avatar_url":"https://github.com/slice.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# havoc\n\n\u003cimg src=\"./docs/spectacles_67d10e6_uncollapsed.jpg\" align=\"right\" width=385\u003e\n\nhavoc is a [Discord] client instrumentation toolkit written in [Rust] that aims\nto be robust, correct, and efficient. [watchdog] is a persistent daemon-like\nprogram that leverages havoc to monitor for new builds, exposes a fluent HTTP\nAPI, and performs code and asset diffing between builds. [spectacles] is a\nfrontend that consumes this information, collating and presenting it in a\nbeautiful and easy-to-understand way.\n\nhavoc and friends are intended to be useful tools to client modders and curious\nonlookers alike, and is especially designed to cater to people who would benefit\nfrom an easier time inspecting the client's code. User friendliness and\nexperience is an overall priority.\n\n**These projects are currently a heavy work-in-progress** and aren't ready for\ngeneral consumption just yet. They'll become minimum viable products eventually,\nbut will likely require maintenence indefinitely due to the nature of the\nproject.\n\n[rust]: https://www.rust-lang.org\n[watchdog]: /crates/watchdog\n[spectacles]: /spectacles\n[discord]: https://discord.com\n\n\u003cbr clear=\"both\"\u003e\n\n## Usage\n\nWe currently don't provide pre-built binaries. To get started, make sure you\nhave a functional [Rust] toolchain on your machine (try [rustup]). Clone the\nrepository and try out these commands in a shell:\n\n[rustup]: https://rustup.rs\n\n```sh\n# Scrape the latest Canary build and output basic information (such as the\n# build number, ID, and assets) to stdout.\n$ cargo run --bin havoc -- scrape fe:canary\n\n# Scrape the latest Canary build, parsing and dumping all Webpack modules'\n# source code into a JSON file in the current directory, keyed by module ID.\n$ cargo run --bin havoc -- scrape fe:canary --dump modules\n```\n\n## License\n\nhavoc and related projects are distributed under the MIT License. See the\n[LICENSE](LICENSE) file for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslice%2Fhavoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslice%2Fhavoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslice%2Fhavoc/lists"}