{"id":13589122,"url":"https://github.com/resyncgg/ripgen","last_synced_at":"2025-04-08T07:31:42.677Z","repository":{"id":43703890,"uuid":"451309757","full_name":"resyncgg/ripgen","owner":"resyncgg","description":"Rust-based high performance domain permutation generator.","archived":false,"fork":false,"pushed_at":"2023-12-02T22:57:22.000Z","size":31,"stargazers_count":286,"open_issues_count":4,"forks_count":32,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-07T16:40:08.460Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/resyncgg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2022-01-24T04:00:22.000Z","updated_at":"2025-03-04T16:37:25.000Z","dependencies_parsed_at":"2024-11-06T08:34:54.389Z","dependency_job_id":"cf1c462e-4150-4276-835e-c11add718e45","html_url":"https://github.com/resyncgg/ripgen","commit_stats":{"total_commits":15,"total_committers":3,"mean_commits":5.0,"dds":0.1333333333333333,"last_synced_commit":"cd71256da3e3a2d982c038a747fc88e7574ad149"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/resyncgg%2Fripgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/resyncgg%2Fripgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/resyncgg%2Fripgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/resyncgg%2Fripgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/resyncgg","download_url":"https://codeload.github.com/resyncgg/ripgen/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247796187,"owners_count":20997526,"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":[],"created_at":"2024-08-01T16:00:23.395Z","updated_at":"2025-04-08T07:31:42.276Z","avatar_url":"https://github.com/resyncgg.png","language":"Rust","readme":"# ripgen\nA rust-based version of the popular [dnsgen](https://github.com/ProjectAnte/dnsgen) python utility.\n\n`ripgen` is split into two main parts:\n\n* **ripgen**: _A CLI utility that calls into `ripgen_lib` and uses dnsgen's transforms_.\n* **ripgen_lib**: _A library that allows you to create high performance permutations of domain names._\n\n# How to Install!\nInstallation of `ripgen` is very simple - follow the steps below.\n\n### Step 1 - rustup.rs\nVisit https://rustup.rs/ and follow the instructions to get started with `rust` and `cargo`.\n\n### Step 2 - cargo install\nRun `cargo install ripgen`\n\n## How to Use - `ripgen`\n`ripgen` optionally takes a domain file, a wordlist file, and a minimum word length argument.\n\nIf no domain file is listed, domains are expected through `stdin` making it easy to pipe into from other tools.\n\ne.g.\n```\n$ echo \"www1.google.com\" | ripgen\n```\n\nOne deviation from dnsgen's behavior is that if no wordlist is specified then no wordlist items are included automatically. To compare `ripgen` and `dnsgen` appropriately you should make sure to specify a wordlist.\n\n## How to use - `ripgen_lib`\n`ripgen_lib` exposes a `RipGenManager` struct that takes in three components:\n\n* an iterator for domain names\n* an iterator for wordlist entries\n* a function that converts `\u0026\u0026str` into `bool` for the purposes of filtering wordlist entries\n\nAfter creating a `RipGenManager`, transforms can be added on with `transform` and `chain_transform`. These transforms require a function definition (closure or otherwise) be passed in that can take the `\u0026DomainComponent` and `WordListIterator` types and return an `Iterator\u003cItem = String\u003e`.\n\nLook at the non-default dnsgen transform implementations for examples on how these are implemented typically.\n\n# FAQ\n## `linker 'cc' not found`\nIf this happens, it means that you need to install some dependencies on your system to build `ripgen`. Here's how to fix that:\n\n\n### Debian (Ubuntu, Kali, WSL (_you probably used Ubuntu_))\n```\nsudo apt-get update\nsudo apt install build-essential\n```\n\n### Arch\n```\nsudo pacman -S base-devel\n```\n\n### Centos\n```\nsudo yum install gcc\n```\n\n### Alpine\n```\napk add build-base --no-cache\n```\n\n","funding_links":[],"categories":["Miscellaneous","Projects"],"sub_categories":["Permutation"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fresyncgg%2Fripgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fresyncgg%2Fripgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fresyncgg%2Fripgen/lists"}