Gonetia is a simple command-line utility for generating a list of planet names issuable from an Urbit star. It is inspired by Venetia, but written in Go instead of JS.
gonetia_demo-2022-09-16_19.15.49.mp4
Homebrew (macOS / Linux):
brew install tomholford/tap/gonetiaBinaries for macOS, Linux, and Windows are on GitHub Releases. gonetia --version prints the release tag.
From source (Go 1.26+, see go.mod):
git clone https://github.com/tomholford/gonetia.git
cd gonetia
git submodule update --init --recursive
./ops/build.shThe binary lands at ./bin/gonetia (gitignored). Submodules are required at compile time: the four name wordlists are embedded into the binary.
Enter a star in patp format (e.g., ~marzod) either as a command line argument, or in response to the interactive prompt.
gonetia "~marzod"
From a source build, use ./bin/gonetia instead.
gonetia
# Enter a star in patp format
>Which star? (e.g., ~marzod):
~marzodA planet identity is a four-syllable name composed of two six-character segments, such as ~sampel-palnet.
The script uses urbit-wordlists and various strategies to generate output:
- AnyEnglish: at least one segment matches
wordlists/name/english-singleorwordlists/name/english-double. - OnlyEnglish: both segments match
wordlists/name/english-singleorwordlists/name/english-double. - AnyApprox: at least one segment matches
wordlists/name/approx-singleorwordlists/name/approx-double. - OnlyApprox: both segments match any of the wordlists.
- Doubles: both segments are identical (e.g., ~datnut-datnut)
- Alliteration: both segments start with the same letter (e.g., ~bacbel-baldut)
Output for each is written to ./output/[star]/[strategy]_planets.txt, for 6 total files per run.
MIT. See CONTRIBUTING.md for the local gauntlet and SECURITY.md to report vulnerabilities.
- Thanks to @tylershuster for creating Venetia
- Thanks to @deelawn for creating urbit-gob
- Thanks to @ashelkovnykov for creating urbit-wordlists
- Thanks to @michelleylai for feature ideas, feedback, testing, and proofreading docs