GAN: The Great Automatic Nomenclator
The Next Million Names for Archaea and Bacteria, and the nomenclator Python package
Principle
To generate a large number of new names, we apply a combinatorial approach starting with two or three sets of curated roots, that are processed to produce all their possible combinations while keeping trace of their grammatical metadata to draft a valid etymology.
Installation
GAN is available on PyPI as gan-nomenclature and installs with Python 3.8+:
pip install gan-nomenclature
This command installs the library together with its dependencies (pandas, openpyxl, ...).
To work in an isolated environment, you can create one with conda and then install the package from PyPI:
conda create -c conda-forge -n gan python=3.10 pandas pip ipython
conda activate gan
pip install gan-nomenclature
Command-line tools
Installing the package provides a small suite of CLI helpers:
gan-genus: generate JSON/HTML/LaTeX outputs from two or three curated root tables.gan-validate: validate the input Excel files for correct format and content.gan-init: scaffold Excel templates (optionally populated with example rows) for use withgan-genus.gan-aidraft: generate draft etymologies using OpenRouter-hosted LLMs starting from a text file used as context (e.g. a draft of a paper describing the biome where the new taxa were isolated).xls2tsv: convert each worksheet of a workbook into a separate TSV file.tsv2xls: convert TSV files back into Excel format.
Each command offers --help for additional options and usage examples.
Genera generator
A set of two (or three) Excel tables formatted as shown below is used to generate the list of combinations in JSON, HTML and LaTeX format.
Synopsis:
usage: gan-genus [-h] -1 FIRST -2 SECOND [-3 THIRD] -o OUTDIR [-p PREFIX] [-c CONNECTOR] [-v]
For full usage and installation instructions, please check the documentation.
Example output
Using three small files in the input_test directory (8, 11 and 8 words, respectively), GAN produced 968 (8 x 11 x 8)combinations:
- in PDF format
- in HTML format
Etymology
"The great automatic nomenclaturer" is a reference to a short story ("The Great Automatic Grammatizator") written by the British author Roald Dahl [link].
Citation
Mark J. Pallen et al. The Next Million Names for Archaea and Bacteria, Trends in Microbiology (2020). DOI: 10.1016/j.tim.2020.10.009
Metadata
Release files for nomenclator 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| nomenclator-1.2.0.tar.gz | 64.4 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nomenclator-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 112.5 kB
Release files / nomenclator-1.2.0.tar.gz
| Download URL | nomenclator-1.2.0.tar.gz |
|---|---|
| Size | 64.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4fe7677f734114062e21ab2c83e3d88664800109e351a99ad4768c75fa9992a7
|
|
BLAKE2b-256 checksum How to use checksums |
9390a05a48ad49285947a6c197e08b3af25a7af2e7980625c15295cf0f237ea8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2025.
Transparency logRelease files / nomenclator-1.2.0-py3-none-any.whl
| Download URL | nomenclator-1.2.0-py3-none-any.whl |
|---|---|
| Size | 48.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8c56086e680f58aa7cd3d8ded2afdc8be274a199aa160143891d823e9ec2c9fc
|
|
BLAKE2b-256 checksum How to use checksums |
10c83e6be5e73a9cfea5aeb8d2a11bc5a959e27519da6f4b2ca5e1c3d0537dfb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2025.
Transparency logSecurity for nomenclator 1.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for nomenclator-1.2.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2025.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.