name-on 1.0.0

dotnet tool install --global name-on --version 1.0.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local name-on --version 1.0.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=name-on&version=1.0.0
                    
nuke :add-package name-on --version 1.0.0
                    

Name-On

Name-On generates a new Adjective-Noun-Number combo with each request. Useful for unique, human-readable names for projects, containers, or anything else.

Try it live: name-on.clintcparker.com

The Name-On web app generating a new adjective-noun-number combo on each click


Installation

CLI

Install the name-on command-line tool using any of these methods:

# Homebrew
brew install clintcparker/tap/name-on

# .NET Tool
dotnet tool install -g name-on

# Shell script (Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/clintcparker/name-on/main/install/install.sh | sh

# PowerShell (Windows)
irm https://raw.githubusercontent.com/clintcparker/name-on/main/install/install.ps1 | iex

Web App

No installation needed. Visit name-on.clintcparker.com to use the Blazor WebAssembly app directly in your browser.


CLI Usage

name-on [options]

A terminal session running name-on with no arguments, with -n 5, and with custom formats

Option Description Default
-n, --count <N> Generate N names 1
-s, --separator <SEP> Separator between parts -
-f, --format <FORMAT> Name format using: adj, noun, num adj-noun-num
-v, --version Show version
-h, --help Show help

Examples

name-on                         # clever-otter-123
name-on -n 5                    # Generate 5 names
name-on -s _                    # clever_otter_123
name-on -f adj-noun             # clever-otter
name-on -f noun-adj-num         # otter-clever-123

Shell Completions

name-on completions bash >> ~/.bashrc
name-on completions zsh >> ~/.zshrc
name-on completions fish > ~/.config/fish/completions/name-on.fish
name-on completions powershell >> $PROFILE

Customization Options

The web app exposes the full set of options under Show Options. Your choices are saved to localStorage, so they persist across reloads.

  • Format templates: Adjective-Noun-Number (default), Adjective-Noun, Noun-Adjective-Number, Adjective-Adjective-Noun, Noun-Number
  • Joining styles: dash (word-word), underscore (word_word), none (wordword), camelCase, PascalCase
  • Number range: 0-9, 0-99, 0-999 (default), or 0-9999, with optional zero-padding
  • Word length filter: minimum and maximum word length, with a warning when the filter leaves too few words to choose from

The web app customization panel, showing name format, joining style, number range, and word length controls

The CLI covers a focused subset of these: --format for the template and --separator for the joining character. See CLI Usage above.


Architecture

Name-On is a Blazor WebAssembly (WASM) app that runs entirely in the browser, plus a cross-platform CLI tool. Both use a shared C# core library for name generation. There are no server-side APIs required.

Solution Structure

  • name-on-core: Shared C# library with the core name generation logic
  • name-on-blazor: Blazor WASM frontend, directly references and uses name-on-core
  • name-on-cli: Cross-platform command-line tool
  • name-on-unit-tests: Unit tests for the core library
  • name-on-cli-tests: Tests for the CLI

Development

Prerequisites

Build

dotnet build name-on.sln

Test

dotnet test name-on.sln

Run the Web App Locally

dotnet run --project name-on-blazor

Roadmap

  • Migrate to Blazor WebAssembly (WASM) only
  • Remove Azure Functions and legacy static frontend
  • Modernize deployment for static hosting
  • Add customization options for name format
  • Add CLI tool with cross-platform installation
  • Theme packs / custom word lists
  • Bulk generation and export
  • History and favorites

License

MIT

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.0 144 7/30/2026