NEW

Noundry CLI (nd)

The unified command-line interface for dotnet.exe and all Noundry framework tools. Fast, beautiful, and efficient.

$ dotnet tool install --global Noundry.Cli

✨ Drop-In Tool for Your Workflow

nd CLI is a drop-in tool that allows you to interact with dotnet native CLI AND fully engage with existing Noundry tooling from one unified interface. No need to remember multiple command names or install tools separately.

Why nd Instead of dotnet?

Noundry seeks a clean break from the past. While we deeply respect the .NET ecosystem and C# as a language, we're paving the way for a fresh perspective—one that's free from the Windows-only perception that has long been associated with the dotnet brand.

The nd CLI represents more than just a wrapper around dotnet.exe. It's a statement: C# is a modern, powerful language that deserves modern tooling, modern UI patterns, and a cloud-agnostic perspective.

Noundry embraces modern designs, patterns, and practices in a pragmatic but opinionated way. We remove the foot guns and stigma that come baked into default dotnet templates. We enable a new generation of developers to build world-class solutions without carrying the baggage of legacy assumptions.

This is the Noundry ethos: Modern C#. Modern tooling. No compromises.

Key Features

🚀

Single CLI for Everything

One tool to access dotnet and all Noundry utilities

Fast & Efficient

Built with .NET 9.0 for optimal performance

🎨

Beautiful UI

Powered by Spectre.Console with rich formatting

🔧

Project Initialization

Interactive wizard for noundry.json setup

📦

Auto Tool Installation

Installs missing tools on-demand

⏱️

Progress Tracking

Every command shows execution time

Installation

# Install as .NET global tool
$ dotnet tool install --global Noundry.Cli
# Verify installation
$ nd --version
1.0.0

Quick Start

1. Initialize a New Project

$ nd init --framework net90

This starts an interactive wizard that creates your noundry.json configuration file.

2. Install Noundry Tools

$ nd install

Installs all Noundry CLI tools globally: ndng, slurp, authnz, lgby, njobs, ndotenvx, bowtie, cufflink

Note: Some tools may not yet be published to NuGet. The command shows which tools installed successfully.

3. Configure Private Package Server (Optional)

$ nd nd-package-server --apikey YOUR_API_KEY

Adds packages.noundry.com as a NuGet source for commercial packages.

Core Commands

nd init

Initialize a new Noundry project with interactive wizard.

# Interactive mode
$ nd init
# Specify framework version
$ nd init --framework net90

nd dn

Wrapper for dotnet.exe - run any dotnet command through nd.

# Build project
$ nd dn build
# Create new project (use -- before options)
$ nd dn new webapi -- -n MyApi
# Run application
$ nd dn run

Important: When using dotnet commands with options like -n, -c, -o, use the -- separator.

nd install

Install all Noundry CLI tools globally.

$ nd install

Tool Wrappers

Access all Noundry tools through the nd CLI:

nd ng

Engine CLI (deployment)

nd slurp

Data ingestion

nd authnz

Authentication/Authorization

nd lgby

Logably (logging)

nd jobs

Background jobs

nd envx

Environment variables

nd bowtie

Tuxedo Bowtie

nd cufflink

Tuxedo Cufflink

Complete Workflow Example

Here's a complete example of creating and deploying a new web API:

# 1. Initialize project
$ nd init --framework net90
# 2. Install Noundry tools
$ nd install
# 3. Create new web API (use -- before options)
$ nd dn new webapi -- -n MyApi
# 4. Build the project
$ cd MyApi
$ nd dn build -- -c Release
# 5. Run tests
$ nd dn test
# 6. Publish application (use -- before options)
$ nd dn publish -- -c Release -o ./publish
# 7. Initialize deployment server
$ nd ng init --host 192.168.1.100 --key ~/.ssh/id_rsa
# 8. Deploy to production
$ nd ng add myapi.com --port 5000 --ssl
$ nd ng deploy myapi.com --source ./publish

Key Benefits

1. Unified Interface

Before

dotnet build -c Release
dotnet tool install --global Noundry.Engine.Cli
ndng init
dotnet tool install --global Noundry.Slurp
slurp process

After (with nd)

nd dn build -- -c Release
nd install # Installs all tools
nd ng init
# slurp already installed!
nd slurp process

2. Automatic Tool Management

If you try to use a tool that's not installed, nd will offer to install it:

$ nd ng init
Tool 'ndng' is not installed.
Would you like to install ndng? (y/n): y
✓ ndng installed successfully!
Running: ndng init

Ready to Get Started?

Install nd CLI now and streamline your development workflow.

dotnet tool install --global Noundry.Cli