CLI Tools

A collection of .NET command-line tools designed to boost developer productivity. Install them globally and use them from any terminal to speed up common development tasks.

Why CLI Tools?

Developers frequently need to perform small, repetitive tasks: generating GUIDs, creating test passwords, minifying JSON files, or managing focus time. Instead of switching to websites or writing one-off scripts, these CLI tools provide instant access from your terminal.

All tools are built with .NET and distributed as global tools via NuGet, making installation and updates simple with a single command.

Available Tools

create-guid

Quickly generate GUIDs (Globally Unique Identifiers) from the command line. Perfect for when you need a new GUID for configuration files, database records, or code constants without leaving your terminal.

Installation

dotnet tool install -g D20Tek.Tools.CreateGuid

Usage

# Generate a single GUID
create-guid

# Generate multiple GUIDs
create-guid -c 5

# Output in different formats
create-guid -f uppercase
create-guid -f digits

Features

  • Generate one or multiple GUIDs at once
  • Multiple output formats (standard, uppercase, digits only, etc.)
  • Copy to clipboard option
  • Instant results - no internet required

dev-password

Generate secure, random passwords for development and testing purposes. Configurable length and character sets make it easy to create passwords that meet various complexity requirements.

Installation

dotnet tool install -g D20Tek.Tools.DevPassword

Usage

# Generate a password with default settings
dev-password

# Generate a 24-character password
dev-password -l 24

# Generate password with specific character types
dev-password --uppercase --lowercase --digits --symbols

# Generate multiple passwords
dev-password -c 5

Features

  • Configurable password length
  • Include/exclude character types (uppercase, lowercase, digits, symbols)
  • Generate multiple passwords at once
  • Cryptographically secure random generation

dev-pomo

A Pomodoro timer for the command line. Stay focused and productive with timed work sessions and breaks, all without leaving your development environment.

Installation

dotnet tool install -g D20Tek.Tools.DevPomo

Usage

# Start a standard 25-minute focus session
dev-pomo

# Start a custom duration session (in minutes)
dev-pomo -d 45

# Start a short break timer
dev-pomo --break

# Start a long break timer
dev-pomo --long-break

Features

  • Standard Pomodoro timing (25 min work, 5 min break)
  • Customizable session durations
  • Visual countdown in terminal
  • Audio notification when timer completes
  • Track your focus sessions

json-minify

Minify JSON files by removing whitespace and formatting. Useful for reducing file sizes, preparing JSON for embedding, or cleaning up configuration files.

Installation

dotnet tool install -g D20Tek.Tools.JsonMinify

Usage

# Minify a JSON file (outputs to console)
json-minify input.json

# Minify and save to a new file
json-minify input.json -o output.min.json

# Minify all JSON files in a directory
json-minify ./config/*.json

Features

  • Remove all unnecessary whitespace
  • Validate JSON structure during processing
  • Output to console or file
  • Process multiple files with wildcards
  • Preserve valid JSON structure

Installation Overview

All CLI tools are distributed as .NET global tools. Install them once and use them from any directory on your system.

Prerequisites

  • .NET 8.0 SDK or later

Install All Tools

# Install all CLI tools at once
dotnet tool install -g D20Tek.Tools.CreateGuid
dotnet tool install -g D20Tek.Tools.DevPassword
dotnet tool install -g D20Tek.Tools.DevPomo
dotnet tool install -g D20Tek.Tools.JsonMinify

Update Tools

# Update a specific tool to the latest version
dotnet tool update -g D20Tek.Tools.CreateGuid

# Or update all global tools
dotnet tool update -g --all

Uninstall

dotnet tool uninstall -g D20Tek.Tools.CreateGuid

Why .NET Global Tools?

  • Cross-platform - Works on Windows, macOS, and Linux
  • Simple installation - One command to install, one to update
  • No dependencies - Self-contained executables
  • Fast startup - Native AOT compilation for quick execution
  • Version management - Easy to update or rollback versions

Boost your command-line productivity

An unhandled error has occurred. Reload 🗙