Built something? We create video reels & spotlights for GitHub projects.Promote your project →
urfave
Home / Go / cli

urfave/cli

A declarative, simple, fast, and fun package for building command line tools in Go

Go ◇ cli MIT
★24.3KSTARS
⑂1.8KFORKS
!38ISSUES
🏆#375GLOBAL RANK
🔥5DAYS TRENDING
🚀
Maintainer Growth Kit for cli

Claim this project, add your verified backlink badge to your README, and download milestone cards.

Claim Repo

Star History

Continuous Observations
Interactive star growth chart for urfave/cli
CSV

Momentum

+607

STARS · LAST 30 DAYS

20

PER DAY

#56

MOST-STARRED Go

Window7 days30 days90 days
Stars gained+140+607+1.8K
Per day202020
Forks gained+9+37+91

cli gained 607 stars in the last 30 days, about 20 a day, and now has 24.3K. It is about 13 years old and has averaged roughly 1.9K stars a year. It ranks #56 among Go repositories and #375 across all languages on GitHubRepo.

Trending Record

cli has maintained a continuous presence across global trending indexes, peaking at #498. Below is the 30-day activity profile:

💡 Overview

cli is an open-source project written in Go: A declarative, simple, fast, and fun package for building command line tools in Go.

Engineered for speed, consistency, and developer ease, it solves common hurdles in cli, command-line, go. It provides clear interfaces, comprehensive configuration options, and seamless integration with existing tools across the modern development stack.

⚡ Key Features

1

Optimized execution pipeline written in Go for predictable speed.

2

Zero-friction configuration with comprehensive sensible defaults out of the box.

3

Cross-platform runtime support across Linux, macOS, and Windows environments.

4

Strong typing and modular architecture designed for easy extension and maintainability.

5

Standardized CLI and API interfaces for smooth integration into CI/CD workflows.

6

Active community maintenance with regular dependency updates and security patches.

📥 Installation

terminal
$ go install github.com/urfave/cli@latest

⚙ System Requirements

Platforms

  • • macOS
  • • Linux
  • • Windows

Runtime & Dependencies

Go >= 1.21 runtime environment

Architecture

x86_64, ARM64 (Apple Silicon & Graviton)

🧠 How It Works

cli coordinates its core functionality through a modular Go pipeline. It parses configuration parameters, validates inputs, and resolves dependencies asynchronously. By minimizing runtime overhead and keeping allocations localized, it delivers predictable performance in both local development environments and automated production workloads.

🎯 Production Use Cases

Command-Line Automation

Execute automated build, deployment, and maintenance tasks directly from the terminal.

CI/CD Workflow Integration

Run non-interactive validation checks in GitHub Actions, GitLab CI, or local pre-commit hooks.

Developer Environment Setup

Standardize local engineering workstations with single-binary utility commands.

Scripting & Pipeline Orchestration

Chain complex multi-stage scripts with reliable error reporting and exits.

🚀 Getting Started

1

Install cli using your package manager: `go install github.com/urfave/cli@latest`

2

Initialize your project workspace or configuration file for cli.

3

Import cli into your codebase or invoke it directly from your terminal.

4

Execute your test suite or run `cli --help` to verify successful setup.

👍 Strengths

Active community backing with 24,248 GitHub stars and verified adoption.
Permissive open-source distribution under the MIT license.
Built in Go for high execution speed and developer familiarity.
Cross-platform compatibility across modern Linux, macOS, and Windows environments.
Clean modular design allowing flexible configuration and pipeline integration.

⚠️ Considerations

Requires familiarity with Go and modern CLI workflows.
Ecosystem extensions may require manual configuration depending on environment constraints.
Active development roadmap means breaking API changes may occur across major versions.

⇄ Alternatives & Direct Competitors

A
avelino/awesome-go ★ 185.9K Go

A curated list of awesome Go frameworks, libraries and software

Compare ↗
O
ollama/ollama ★ 181.8K Go

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.

Compare ↗
G
golang/go ★ 139.1K Go

The Go programming language

Compare ↗
K
kubernetes/kubernetes ★ 128K Go

Production-Grade Container Scheduling and Management

Compare ↗

👥 Who Should Use This

Developers and engineering teams building with Go, seeking reliable, tested, and actively maintained tooling for production workloads.

🏆 Nearby in the Rankings

urfave/cli is currently ranked #375 by stars across every repository tracked on GitHubRepo. These are adjacent projects:

RankRepositoryLanguageStarsAction
#370 chromium/chromium — ★ 24.9K Compare ↗
#371 firefly-iii/firefly-iii PHP ★ 24.8K Compare ↗
#372 dolthub/dolt Go ★ 24.5K Compare ↗
#373 onevcat/Kingfisher Swift ★ 24.4K Compare ↗
#374 redisson/redisson Java ★ 24.4K Compare ↗
#375 urfave/cli This Project Go ★ 24.3K
#376 argoproj/argo-cd Go ★ 24.3K Compare ↗
#377 semantic-release/semantic-release JavaScript ★ 24.1K Compare ↗
#378 PrefectHQ/prefect Python ★ 23.9K Compare ↗
#379 facebook/lexical TypeScript ★ 23.9K Compare ↗
#380 mihonapp/mihon Kotlin ★ 23.8K Compare ↗

Frequently Asked Questions

What does cli do? +

A declarative, simple, fast, and fun package for building command line tools in Go

What language is cli written in? +

The primary language is Go. Topics include: cli, command-line, go, golang-library, json.

Is cli actively maintained? +

Yes, the last recorded push was on Sep 26, 2026 with 38 open issues being tracked.

How many stars does cli have? +

cli has 24,263 stars and 1,827 forks on GitHub.

How does cli rank among GitHub repositories? +

With 24,263 stars, urfave/cli is ranked #375 globally across all repositories tracked on GitHubRepo and #56 among Go projects.

What license is cli distributed under? +

The repository reports a MIT license. Always verify the repository LICENSE file for legal terms.

From our network
FOR MAINTAINERS

Built something? Put it in front of millions of developers.

We make a short reel about your project and post it across YouTube, Instagram, Threads, and X. Send a link, we do the rest.