awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to cliutils/cli11

Open-source alternatives to CLI11

30 open-source projects similar to cliutils/cli11, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best CLI11 alternative.

  • commandlineparser/commandlinecommandlineparser 的头像

    commandlineparser/commandline

    4,817在 GitHub 上查看↗

    This library is a .NET command line parser for C# and F# that implements POSIX getopt conventions to map shell arguments into strongly typed objects. It provides a framework for building console applications that process Unix-style flags and options. The project features a routing system that directs program execution based on action-oriented verbs, supporting sub-commands and default actions. It includes an automatic help generator that produces localized usage instructions and formatted help screens based on the defined command options. The toolset covers argument parsing with strongly typ

    C#command-linedotnetdotnet-core
    在 GitHub 上查看↗4,817
  • fastapi/typerfastapi 的头像

    fastapi/typer

    19,632在 GitHub 上查看↗

    This project is a Python framework for building command-line interfaces by converting standard functions into executable programs. It uses type hints to automatically infer and generate argument parsers, validation logic, and help documentation, allowing developers to define complex terminal applications through simple function signatures. The framework distinguishes itself through a decorator-driven registration system that enables the construction of hierarchical command trees. It supports dependency injection to manage shared state and runtime configuration across subcommands, and it utili

    Pythoncliclickpython
    在 GitHub 上查看↗19,632
  • yargs/yargsyargs 的头像

    yargs/yargs

    11,492在 GitHub 上查看↗

    yargs is a command-line interface framework and argument parser for Node.js. It translates raw command-line strings into structured JavaScript objects, providing a toolkit for building terminal applications with nested sub-commands, dedicated handlers, and a structured user interface. The framework distinguishes itself through automated help text generation, which constructs formatted usage menus and instructions based on registered metadata. It also provides shell completion generation for Bash and Zsh and uses string-distance algorithms to offer typo correction suggestions when invalid inpu

    JavaScript
    在 GitHub 上查看↗11,492

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Find more with AI search
  • pallets/clickpallets 的头像

    pallets/click

    17,560在 GitHub 上查看↗

    Click is a Python framework for building command-line interfaces. It provides a declarative approach to defining command structures, allowing developers to map functions to command-line arguments, options, and nested groups using decorators. The framework handles the complexities of parameter parsing, type validation, and help documentation generation automatically. The project distinguishes itself through its hierarchical context system, which propagates configuration and state across nested commands, and its environment-aware parameter resolution that prioritizes command-line inputs, enviro

    Pythoncliclickpallets
    在 GitHub 上查看↗17,560
  • remkop/picocliremkop 的头像

    remkop/picocli

    5,387在 GitHub 上查看↗

    picocli is a command line interface development framework and argument parser for JVM-based applications. It maps command line options and positional parameters to strongly typed Java methods and fields using a declarative, annotation-based model. The framework provides specific support for native image compilation, producing the reflection and resource configuration files necessary to build standalone binaries with reduced startup overhead. It further distinguishes itself with a dedicated system for generating shell autocompletion scripts and an ANSI terminal stylizer for applying colors and

    Java
    在 GitHub 上查看↗5,387
  • apple/swift-argument-parserapple 的头像

    apple/swift-argument-parser

    3,728在 GitHub 上查看↗

    This is a library for building command-line interfaces in Swift. It converts command-line arguments into type-safe Swift properties using a declarative approach, ensuring that inputs match expected data types to prevent runtime errors. The framework supports the creation of complex command hierarchies through nested subcommands. It automatically generates formatted usage documentation and error messages by deriving information from the defined metadata and types. The system utilizes property wrappers to attach parsing logic to types and employs reflection to extract metadata from property na

    Swift
    在 GitHub 上查看↗3,728
  • alecthomas/kongalecthomas 的头像

    alecthomas/kong

    2,976在 GitHub 上查看↗

    Kong is a declarative command line interface framework and parser for Go. It maps flags and positional arguments directly into typed Go structures using struct tags, allowing developers to define terminal interfaces through data models rather than manual parsing logic. The project functions as a configuration mapper that populates Go structures from a combination of command-line arguments, environment variables, and JSON files. It distinguishes itself by providing a dependency injection container to pass external services into command handlers and a plugin architecture for dynamic command reg

    Gocommand-linecommandsflags
    在 GitHub 上查看↗2,976
  • sindresorhus/meowsindresorhus 的头像

    sindresorhus/meow

    3,708在 GitHub 上查看↗

    Meow is a Node.js command line argument parser that converts raw input strings into structured objects. It functions as a tool for processing flags and positional arguments according to POSIX and shell conventions. The library provides a system for enforcing required arguments and verifying data types for command line inputs. It also serves as a helper for managing version strings, help menus, and subcommand routing within terminal applications. The project covers the broader surface of command line interface development, including input validation and the direction of execution paths via ke

    JavaScriptclicommand-linejavascript
    在 GitHub 上查看↗3,708
  • jarro2783/cxxoptsjarro2783 的头像

    jarro2783/cxxopts

    4,779在 GitHub 上查看↗

    cxxopts is a header-only C++ command line parser used to define required options, default values, and positional arguments for console applications. It functions as a lightweight utility for parsing command line arguments into typed values using short and long flags and automatically generating formatted help messages and documentation. The library provides capabilities for argument specification, allowing the definition of option descriptions, types, and boolean flags. It supports multi-value option collection into containers, default value management for omitted options, and the mapping of

    C++
    在 GitHub 上查看↗4,779
  • clap-rs/clapclap-rs 的头像

    clap-rs/clap

    16,528在 GitHub 上查看↗

    Clap is a command-line argument parser for Rust that enables developers to define complex interfaces through strongly-typed data structures. It functions as a comprehensive framework for building terminal applications, automating the transformation of raw string inputs into validated, type-safe code representations while simultaneously generating help documentation and usage statements. The library distinguishes itself by offering both a declarative, attribute-based approach and a fluent builder-pattern API, allowing for flexible interface construction. It includes a sophisticated validation

    Rustargument-parserargument-parsingcommand-line
    在 GitHub 上查看↗16,528
  • urfave/cliurfave 的头像

    urfave/cli

    24,133在 GitHub 上查看↗

    This is a framework for building structured terminal applications in Go. It provides the core components necessary to define a command-line interface, including a system for managing commands, sub-commands, and their associated flags. The library distinguishes itself through an automated help generator that produces formatted usage instructions and manual pages, and a shell completion generator that creates tab-completion scripts for Bash, Zsh, Fish, and PowerShell. It also features a command lifecycle manager to handle pre- and post-execution logic and process exit codes. The toolkit covers

    Goclicommand-linego
    在 GitHub 上查看↗24,133
  • rails/thorR

    rails/thor

    5,258在 GitHub 上查看↗

    Thor is a Ruby toolkit for building command line interfaces and task runners. It maps user flags and parameters to executable methods, functioning as both a command line argument parser and a framework for creating self-documenting terminal tools. The framework automatically generates usage banners and help menus based on defined method signatures. It organizes related commands within classes to create isolated namespaces and injects user-defined flags directly into method logic. Beyond interface generation, the project includes capabilities for build task automation and the sequential execu

    Ruby
    在 GitHub 上查看↗5,258
  • mojang/brigadierMojang 的头像

    Mojang/brigadier

    3,698在 GitHub 上查看↗

    Brigadier is a command-line parser and dispatcher that maps text-based inputs to executable functions using a hierarchical tree of arguments. It provides a system for defining nested command structures and typed arguments to route user input to specific handlers. The library includes a command syntax generator that automatically produces human-readable usage strings and documentation based on defined command nodes. It transforms raw strings into structured data to identify valid command sequences and pinpoint syntax errors. The framework covers command tree routing, input syntax validation,

    Javamojang-active
    在 GitHub 上查看↗3,698
  • oclif/oclifoclif 的头像

    oclif/oclif

    9,543在 GitHub 上查看↗

    oclif is a Node.js framework for building command-line interfaces. It provides a structured system for developing terminal applications with consistent command patterns, argument parsing, and automated help generation. The project features a modular plugin architecture that allows for external functionality to be injected via a manifest-based loading mechanism. It includes a dedicated distribution pipeline and packager to bundle applications into OS-native installers and tarballs for Windows, macOS, and Linux. The framework covers a broad range of development capabilities, including project

    TypeScript
    在 GitHub 上查看↗9,543
  • cacjs/caccacjs 的头像

    cacjs/cac

    2,923在 GitHub 上查看↗

    cac is a Node.js CLI framework used to build command line interfaces with a declarative API. It functions as a command line argument parser and a command dispatcher that maps terminal input keywords to specific JavaScript callback functions. The framework features an automated help generator that produces usage instructions and version documentation based on the defined command structures. It manages command aliases and provides a routing system to link specific keyword inputs to execution logic. The toolkit covers command interface definition, including the configuration of global and comma

    TypeScriptclicommand-linecommander
    在 GitHub 上查看↗2,923
  • docopt/docoptdocopt 的头像

    docopt/docopt

    8,008在 GitHub 上查看↗

    Docopt is a command-line argument parser and declarative interface tool that converts raw terminal input into a structured data map. It derives its parsing logic and requirements directly from a standardized POSIX-style help message, using the documentation as the formal specification for the interface. The system implements a POSIX usage pattern parser to translate human-readable help strings into rules for extracting options and positional arguments. It automatically generates help screens and version information based on the internal usage patterns defined by the user. The tool ensures a

    Python
    在 GitHub 上查看↗8,008
  • aikar/commandsaikar 的头像

    aikar/commands

    630在 GitHub 上查看↗

    This project is a Java command dispatch framework that maps user input to application logic using annotation-based processing. It provides a unified interface for registering and executing commands, allowing developers to define command syntax, parameter requirements, and execution logic through standard method annotations. The framework distinguishes itself through its cross-platform command handler, which abstracts platform-specific input and registration systems into a single codebase. This allows for consistent command processing across diverse environments, including server proxies, chat

    Javaacfaikar-commandsbukkit
    在 GitHub 上查看↗630
  • spectreconsole/spectre.consolespectreconsole 的头像

    spectreconsole/spectre.console

    11,210在 GitHub 上查看↗

    Spectre.Console is a .NET framework designed for building structured, feature-rich command-line applications. It provides a comprehensive toolkit for managing complex command hierarchies, type-safe argument parsing, and dependency injection, allowing developers to decouple business logic from input processing while maintaining modular application designs. The framework distinguishes itself through a sophisticated terminal user interface toolkit that enables the creation of dynamic, interactive console experiences. It utilizes a markup-based rendering system to display styled text, tables, cha

    C#ansi-colorscli-parserconsole
    在 GitHub 上查看↗11,210
  • alecthomas/participlealecthomas 的头像

    alecthomas/participle

    3,869在 GitHub 上查看↗

    Participle is a Go parser generator and toolkit for building language frontends. It provides a declarative grammar framework that uses reflection and struct tags to map input patterns directly into typed data structures. The library features a stateful lexical analyzer that employs state machines to handle nested or modal patterns. It includes a lexer code generator to produce optimized code, reducing runtime memory allocations and increasing throughput. The project covers recursive descent parsing with support for union types via sealed interfaces and custom parsing logic through interface-

    Goastebnfgo
    在 GitHub 上查看↗3,869
  • microsoft/rushstackmicrosoft 的头像

    microsoft/rushstack

    6,479在 GitHub 上查看↗

    Rushstack is a comprehensive toolset for managing large-scale TypeScript monorepos, providing a framework for build pipeline automation, dependency coordination, and static analysis. It functions as an incremental build orchestrator and management system designed to maintain consistency and performance across multiple packages in a shared workspace. The system distinguishes itself through an execution model based on directed acyclic graphs and content-hash-based incrementalism, which ensures only affected projects are rebuilt. It further optimizes development workflows via remote build artifa

    TypeScript
    在 GitHub 上查看↗6,479
  • crate-ci/typoscrate-ci 的头像

    crate-ci/typos

    4,002在 GitHub 上查看↗

    Typos is a source code spell checker and automated typo fixer designed to detect and correct spelling errors across programming languages and project files. It functions as a CI spelling validator and SARIF compatible linter, allowing projects to prevent misspelled text from reaching production. The tool features a customizable dictionary engine that utilizes TOML configuration and locale-specific dictionaries to manage project-specific terminology. It differentiates itself by splitting programming language identifiers into individual words for validation and verifying the spelling of filenam

    Rust
    在 GitHub 上查看↗4,002
  • cake-build/cakecake-build 的头像

    cake-build/cake

    4,179在 GitHub 上查看↗

    Cake is a cross-platform build automation system and scripting framework that allows users to define software build pipelines using C# scripts. It functions as a CI/CD pipeline orchestrator and build runner, providing a strongly-typed domain-specific language to simplify the orchestration of compilation, testing, and packaging processes across Windows, Linux, and macOS. The system ensures reproducible build environments by pinning the versions of build tools, modules, and dependencies. It distinguishes itself by enabling a C# scripting workflow with full IDE support, including autocomplete, s

    C#build-automationbuild-automation-toolbuild-tool
    在 GitHub 上查看↗4,179
  • jeremyskinner/fluentvalidationJeremySkinner 的头像

    JeremySkinner/FluentValidation

    9,728在 GitHub 上查看↗

    FluentValidation is a strongly-typed data validation library for .NET. It functions as a rule engine and input validation framework used to define and execute complex business rules and constraints for data objects. The library utilizes a fluent interface API, allowing the construction of readable and declarative validation constraints through method chaining. It leverages generics and lambda expressions to enforce data integrity and business logic at compile time. The project covers the enforcement of business rules, strongly-typed data validation, and input sanitization workflows to verify

    C#
    在 GitHub 上查看↗9,728
  • wangdoc/bash-tutorialwangdoc 的头像

    wangdoc/bash-tutorial

    4,354在 GitHub 上查看↗

    This project is a comprehensive educational resource consisting of a Bash programming tutorial, scripting reference, and Linux command line manual. It provides instructional materials for writing scripts, automating system tasks, and mastering terminal navigation and Unix system administration. The guides cover a wide range of shell environment customization, including prompt styling and the use of aliases. It also provides a shell environment guide for managing configuration files and initializing user environments. The materials detail a broad set of capabilities including control flow log

    Shell
    在 GitHub 上查看↗4,354
  • lightbend/configlightbend 的头像

    lightbend/config

    6,309在 GitHub 上查看↗

    This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an immutable tree structure. It resolves ${...} placeholders by traversing the configuration tree and falling back to environment variables and system properties, and validates loaded configurations against a reference schema. The library loads configuration from classpath resources, files, URLs, system properties, and environment variables, merging them with priority-based override semantics. It provides typed value access with automatic type coercion, supports dot-path navigation,

    Javaconfiguration-libraryhoconsupported
    在 GitHub 上查看↗6,309
  • jzaefferer/jquery-validationjzaefferer 的头像

    jzaefferer/jquery-validation

    10,327在 GitHub 上查看↗

    This project is a jQuery-based form validation library designed to verify HTML form input values on the client side before submission. It functions as an input validator that enforces data integrity constraints through rule-based verification and value normalization. The library focuses on web accessibility compliance by linking error messages to input fields via ARIA attributes, ensuring that screen readers can announce validation failures to the user. The system supports the creation of custom validation rules and the transformation of raw input strings through a normalization pipeline. Co

    JavaScript
    在 GitHub 上查看↗10,327
  • metacubex/clashx.metaMetaCubeX 的头像

    MetaCubeX/ClashX.Meta

    5,331在 GitHub 上查看↗

    ClashX.Meta is a macOS desktop application that provides a graphical interface for managing the Clash proxy engine. It enables rule-based traffic routing using domain, IP, and GeoIP rules, and allows users to manage proxy configurations and toggle system proxy settings directly from the menu bar. The application serves as a full-featured client for controlling the core proxy daemon on macOS. The project includes a YAML-based configuration manager with built-in schema validation, ensuring proxy profiles are valid before activation. It also provides a TUN virtual network stack that captures all

    在 GitHub 上查看↗5,331
  • davidanson/markdownlintDavidAnson 的头像

    DavidAnson/markdownlint

    5,855在 GitHub 上查看↗
    JavaScriptcommonmarklintmarkdown
    在 GitHub 上查看↗5,855
  • knadh/koanfknadh 的头像

    knadh/koanf

    3,871在 GitHub 上查看↗

    koanf is a configuration management library for Go designed to load, merge, and unmarshal application settings from multiple sources into structured objects. It functions as a multi-source config loader that aggregates data from environment variables, files, and remote providers into a single unified map. The system utilizes a pluggable architecture for parsing and data abstraction, allowing it to transform bytes from formats such as JSON, YAML, and TOML into nested maps. It supports dynamic configuration watching to monitor external sources and trigger automatic reloads when settings change.

    Goconfigconfig-loaderconfiguration
    在 GitHub 上查看↗3,871
  • jwiegley/use-packagejwiegley 的头像

    jwiegley/use-package

    4,465在 GitHub 上查看↗

    This project is a declarative framework and domain-specific language for managing Emacs Lisp packages. It functions as a startup performance optimizer by grouping package installation, variable settings, and keybindings into single blocks to reduce initial boot time. The system distinguishes itself through a deferred loading framework that delays package execution until specific keys, hooks, or modes are triggered. It uses a macro-based declaration syntax to organize configuration and automate the generation of autoloads, ensuring packages are only loaded when they are actually required. The

    Emacs Lispautoloaddeferred-loadingemacs
    在 GitHub 上查看↗4,465