Slugger 1.2.0
dotnet tool install --global Slugger --version 1.2.0
dotnet new tool-manifest
dotnet tool install --local Slugger --version 1.2.0
#tool dotnet:?package=Slugger&version=1.2.0
nuke :add-package Slugger --version 1.2.0
Readable random names in your terminal — for containers, git branches, preview environments and test data, Docker- and Heroku-style.
Not a URL slugifier: to turn Hello World into hello-world, see
Slugify.Core.
$ dotnet tool install --global Slugger
$ slugger --theme docker --count 3
devoted_noether
smiling_visvesvaraya
suave_kapitsa
$ git switch -c "feature/$(slugger --oneshot)"
Switched to a new branch 'feature/seasoned-persisting-pickoff'
In a terminal, slugger stays open: Enter draws another round, Ctrl+D quits. Piped or captured —
slugger | head -1, name=$(slugger) — it draws once and exits by itself, and --oneshot does the
same in a terminal.
The words go together
Glue a random adjective to a random noun and sooner or later you print thundering-moon. In a
slugger theme, an adjective is only drawn for a noun it can describe: a river can be singing, the
moon cannot. Docker has to hard-code a refusal for boring_wozniak; slugger's docker theme simply
declares it.
Any vocabulary you like
A theme is a plain JSON file. Three ship inside the tool, and more wait in the repository:
| Theme | Sounds like |
|---|---|
heroku |
jagged-thunder-2506 |
jazz |
loosely-arranged-whispering-take-five |
code-review |
melancholy-coordinated-value-object |
cyberpunk |
liquid-cooled-pursuing-combat-drone |
Names that fit where they go
$ slugger --ascii --max-length 63 # a Kubernetes namespace
atmospheric-welcoming-ebbets
$ slugger --casing camel --token-length 4 # an identifier with a suffix
craftyPersistingSpikes1512
Under a length limit the words that would not fit are left out of the draw — a name is never truncated. And a theme too thin to stay varied is refused before the first draw, with every reason at once.
Try it without installing, with the .NET 10 SDK: dnx Slugger --yes -- --theme heroku --oneshot
Learn more: using the command · writing a theme · source and issues
Generating names from C#? Slugger.Core is the library behind this command.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.0 | 0 | 11/11/2026 |
| 1.0.0-preview.1 | 1,138 | 10/7/2026 |