{"id":20585507,"url":"https://github.com/syngenta/nomius","last_synced_at":"2025-07-03T19:37:18.516Z","repository":{"id":160205059,"uuid":"628059326","full_name":"syngenta/nomius","owner":"syngenta","description":"Bulk domain \u0026 package name availability checker","archived":false,"fork":false,"pushed_at":"2024-02-26T12:12:43.000Z","size":622,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-12T17:50:40.489Z","etag":null,"topics":["cli","infrastructure","tool"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/syngenta.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-14T20:18:43.000Z","updated_at":"2023-05-04T19:06:09.000Z","dependencies_parsed_at":"2025-01-16T23:12:05.172Z","dependency_job_id":"c3225857-9bc3-440e-8748-e07cbc3c2c66","html_url":"https://github.com/syngenta/nomius","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/syngenta/nomius","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syngenta%2Fnomius","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syngenta%2Fnomius/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syngenta%2Fnomius/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syngenta%2Fnomius/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/syngenta","download_url":"https://codeload.github.com/syngenta/nomius/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syngenta%2Fnomius/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263389410,"owners_count":23459393,"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":["cli","infrastructure","tool"],"created_at":"2024-11-16T07:08:23.312Z","updated_at":"2025-07-03T19:37:18.483Z","avatar_url":"https://github.com/syngenta.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nomius — bulk domain \u0026 package name availability checker\n\n- [Description](#description)\n- [Ratio](#ratio)\n- [Installation](#installation)\n  - [Ruby gem](#ruby-gem)\n  - [Docker image](#docker-image)\n- [Usage](#usage)\n  - [Basic usage](#basic-usage)\n  - [Built-in help](#built-in-help)\n  - [Using TXT file as input](#using-txt-file-as-input)\n  - [Using CSV file as input](#using-csv-file-as-input)\n  - [Using CSV file as input and output](#using-csv-file-as-input-and-output)\n- [Using as a Ruby library](#using-as-a-ruby-library)\n- [Contributing](#contributing)\n- [Notes](#notes)\n\n## Description\n\n`nomius` takes a list of names as input and check domain name (`.com`, `.org`) and package name (RubyGems, PyPi, NPMjs, etc.) availability.\n\nThe very basic usage example:\n\n![Nomius demo](docs/demo/render.gif)\n\n- `nomius` is a console utility. Could be installed \u0026 used as:\n  - [Ruby gem](#ruby-gem) (Ruby 2.6+);\n  - [Docker image](#docker-image).\n- Availability checks supported:\n  - domain name (`.com`,`.org`);\n  - [RubyGems](https://rubygems.org/) package name;\n  - [PyPi](https://pypi.org/) package name;\n  - [NPMjs](https://www.npmjs.com/) package name;\n  - [GitHub](https://github.com/) user/org name;\n  - [DockerHub](https://hub.docker.com/) user/org name.\n- Input is a name, list of names or CSV file with a list of names.\n- Output is a table with check results for each name. You could choose output to console or CSV file.\n\n## Ratio\n\nFor example, you have created a new biochemistry project. Now you need to find a short and memorable name, with a domain and package name available to register.\n\nYou may brainstorm dozens of names (or use a script to generate hundreds of names in different combinations):\n\n```txt\nliber, chimeia, bchem, chemb, biochem, chembio, biochemio, biochemus\n```\n\nNow you need to filter this list to names that have a domain name and package name available to register. But in popular domain zones (`.com`, `.org`) most of the short and memoizable names are already registered. Also, a good package name may be hard to find, especially if you want the name to be available across different languages and package managers.\n\nManually checking all those names to have available domains (`.com`, `.org`) and package names (`pip`, `npm`, `gem`) is a tedious manual task.\n\n`nomius` will check all your names in a minute 🚀\n\n```shell\nuser@home:~$ nomius liber chimeia bchem chemb biochem chembio biochemio biochemus\n\n┌───────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┐\n│ Name      │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │\n├───────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┤\n│ bchem     │  ❌  │  ❌  │ ❌ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ biochem   │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │\n│ biochemio │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ biochemus │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ chemb     │  ❌  │  ✅  │ ❌ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ chembio   │  ❌  │  ❌  │ ❌ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ chimeia   │  ❌  │  ❌  │ ❌ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ liber     │  ❌  │  ❌  │ ❌ │   ❌   │ ❌  │ ❌  │ ✅  │\n└───────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┘\n```\n\n## Installation\n\n### Ruby gem\n\n```shell\n# Install nomius gem.\nuser@home:~$ gem install nomius\n\n# Run nomius.\nuser@home:~$ nomius biochem\n\n┌─────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┐\n│ Name    │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │\n├─────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┤\n│ biochem │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │\n└─────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┘\n```\n\n### Docker image\n\nAll the options are the same as for the Ruby gem.\n\n\u003e Docker image is not published yet. But you could build it yourself.\n\n```shell\n# 1. Clone the repository.\nuser@home:~$ git clone git@github.com:syngenta/nomius.git\nuser@home:~$ cd nomius\n\n# 2. Build the Docker image.\nuser@home:~$ docker build -t nomius .\n\n# 3. Run the Docker container.\nuser@home:~$ docker run -t --rm nomius biochem\n\n┌─────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┐\n│ Name    │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │\n├─────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┤\n│ biochem │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │\n└─────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┘\n```\n\n## Usage\n\n### Basic usage\n\n```shell\n# Run nomius with a list of names to check.\nuser@home:~$ nomius biochem biochemio biochemus\n\n┌───────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┐\n│ Name      │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │\n├───────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┤\n│ biochem   │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │\n│ biochemio │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ biochemus │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n└───────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┘\n```\n\n### Built-in help\n\n```shell\n# Run built-in help.\nuser@home:~$ nomius --help\n\nUsage: nomius [OPTIONS] [NAMES...]\n\nNomius — bulk domain \u0026 package name availability checker.\n\nOptions:\n  -h, --help           Print usage\n  -i, --input string   Input file. Could be:\n                       - TXT with each name on a separate line;\n                       - CSV file with 2 columns: \"name\",\"comment\" (\"comment\"\n                       is optional).\n\n  -o, --output string  Output CSV file\n  -s, --silent         Print less output\n      --version        Print version\n\nExamples:\n  Basic usage\n  Check \"firstname\" and \"othername\" names.\n    $ nomius firstname othername\n\n  Usage with a TXT file\n    $ nomius --input names.txt\n  or\n    $ cat names.txt | nomius\n  or\n    $ nomius \u003c names.txt\n\n  Usage with a CSV file\n    $ nomius --input names.csv\n\n  Usage with a CSV file and output to a CSV file\n    $ nomius --input names.csv --output results.csv\n```\n\n### Using TXT file as input\n\nUse a TXT file with each name on a separate line.\nWrap strings in quotes if it contains any non-alphanumeric characters.\n\n```txt\nbiochem\nbiochemio\nbiochemus\n```\n\n```shell\nuser@home:~$ nomius --input names.txt\n\n┌───────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┐\n│ Name      │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │\n├───────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┤\n│ biochem   │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │\n│ biochemio │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n│ biochemus │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │\n└───────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┘\n```\n\nAlso, you could use shell pipe:\n\n```shell\nuser@home:~$ cat names.txt | nomius\n# or\nuser@home:~$ nomius \u003c names.txt\n```\n\n### Using CSV file as input\n\nInput CSV file with 2 columns: _name_, _comment_.\n_Name_ is required, _comment_ is optional:\n\n```CSV\nbiochem,\"short of bio+chemistry\"\nbiochemio,\"short of biochemistry + fancy ending\"\nbiochemus,\"short of biochemistry + fancy ending\"\n```\n\n```shell\nuser@home:~$ nomius --input names.csv\n\n┌───────────┬──────┬──────┬────┬────────┬─────┬─────┬─────┬──────────────────────────────────────┐\n│ Name      │ .com │ .org │ GH │ Docker │ npm │ pip │ gem │ Comment                              │\n├───────────┼──────┼──────┼────┼────────┼─────┼─────┼─────┼──────────────────────────────────────┤\n│ biochem   │  ❌  │  ❌  │ ❌ │   ❌   │ ✅  │ ✅  │ ✅  │ short of bio+chemistry               │\n│ biochemio │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │ short of biochemistry + fancy ending │\n│ biochemus │  ✅  │  ✅  │ ✅ │   ✅   │ ✅  │ ✅  │ ✅  │ short of biochemistry + fancy ending │\n└───────────┴──────┴──────┴────┴────────┴─────┴─────┴─────┴──────────────────────────────────────┘\n```\n\n### Using CSV file as input and output\n\n```shell\nuser@home:~$ nomius --input names.csv --output results.csv\n```\n\nOutput in `results.csv` CSV file:\n\n```csv\nName,Comment,bchem.com,bchem.org,GitHub.com,hub.docker.com,NPMjs.com,PyPi.org,RubyGems.org\nbiochem,short of bio+chemistry,-,-,-,-,+,+,+\nbiochemio,short of biochemistry + fancy ending,+,+,+,+,+,+,+\nbiochemus,short of biochemistry + fancy ending,+,+,+,+,+,+,+\n```\n\n## Using as a Ruby library\n\n`nomius` is designed to be a CLI tool, but you could use it as a Ruby library.\n\n```shell\n# Install nomius gem.\nuser@home:~$ gem install nomius\n```\n\n```ruby\nrequire 'nomius'\n\n# Run all checks:\nresults = Nomius::BulkChecker.check(\n  names: [\"biochem\", \"biochemio\", \"biochemus\"]\n)\n\n# Run only specific checks:\nresults = Nomius::BulkChecker.check(\n  names: [\"biochem\", \"biochemio\", \"biochemus\"],\n  detectors: [Nomius::Detector::DomainComDetector]\n)\n\n# Run with verbose logger:\nresults = Nomius::BulkChecker.check(\n  names: [\"biochem\", \"biochemio\", \"biochemus\"],\n  logger: Nomius::Logger::Verbose.new\n)\n\n# Use names with comments\nnames = [\n  Nomius::Name.new(name: \"biochem\", comment: 'short of bio+chemistry'),\n  Nomius::Name.new(name: \"biochemio\", comment: 'short of biochemistry + fancy ending')\n]\nresults = Nomius::BulkChecker.check(names: names)\n```\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at [https://github.com/syngenta/nomius](https://github.com/syngenta/nomius).\n\nPlease, check our [Contribution guide](CONTRIBUTING.md) for more details.\n\nThis project adheres to the [Code of Conduct](CODE_OF_CONDUCT.md). We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.\n\n## Notes\n\n- `nomius` uses DNS and WHOIS checks to verify domain name availability. Results may not be 100% precise.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyngenta%2Fnomius","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsyngenta%2Fnomius","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyngenta%2Fnomius/lists"}