awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

20 repositorios

Awesome GitHub RepositoriesNested Command Structures

Hierarchical organization of CLI commands into sub-commands and groups.

Distinct from CLI Command Frameworks: Distinct from CLI Command Frameworks: focuses on the hierarchical nesting of commands rather than the base framework definition.

Explore 20 awesome GitHub repositories matching development tools & productivity · Nested Command Structures. Refine with filters or upvote what's useful.

Awesome Nested Command Structures GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • google/python-fireAvatar de google

    google/python-fire

    28,208Ver en GitHub↗

    Python Fire is a library that automatically generates command line interfaces from any Python object, function, or class. It removes the need for manual argument parsing by mapping Python dictionaries, lists, and classes directly to terminal commands. The tool converts Python docstrings into formatted terminal help screens and produces shell scripts to enable tab-completion for available commands. It can wrap existing libraries or external modules to expose their functionality via the terminal without requiring modifications to the original source code. The library supports hierarchical comm

    Nest commands in Fire using classes or objects with member objects to create a structured, multi-level command hierarchy.

    Pythonclipython
    Ver en GitHub↗28,208
  • walter201230/pythonAvatar de walter201230

    walter201230/Python

    26,516Ver en GitHub↗

    Python is a high-level, interpreted programming language designed for readability and versatility. It operates via a bytecode-based virtual machine and manages memory automatically through reference-counting garbage collection. The language supports multiple programming paradigms, including object-oriented, imperative, and functional styles, and provides a comprehensive standard library for system operations, networking, and data handling. The language is distinguished by its dynamic nature, allowing for runtime object introspection and metaclass-driven class creation. It utilizes protocol-ba

    Groups related commands into hierarchical sub-commands to manage complex tool functionality.

    Pythonpythonpython3
    Ver en GitHub↗26,516
  • urfave/cliAvatar de urfave

    urfave/cli

    24,133Ver en 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

    Provides a recursive hierarchy for organizing commands and sub-commands with associated metadata.

    Goclicommand-linego
    Ver en GitHub↗24,133
  • fastapi/typerAvatar de fastapi

    fastapi/typer

    19,632Ver en 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

    Organizes related functions into a single command-line application with nested subcommands and automatic help generation.

    Pythoncliclickpython
    Ver en GitHub↗19,632
  • pallets/clickAvatar de pallets

    pallets/click

    17,560Ver en 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

    Combines multiple independent command line utilities into a single hierarchical interface.

    Pythoncliclickpallets
    Ver en GitHub↗17,560
  • clap-rs/clapAvatar de clap-rs

    clap-rs/clap

    16,528Ver en 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

    Manages nested command structures where individual subcommands maintain their own independent arguments, help documentation, and execution logic.

    Rustargument-parserargument-parsingcommand-line
    Ver en GitHub↗16,528
  • yargs/yargsAvatar de yargs

    yargs/yargs

    11,492Ver en 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

    Enables the creation of nested sub-commands with dedicated handlers and options to organize complex CLI structures.

    JavaScript
    Ver en GitHub↗11,492
  • spectreconsole/spectre.consoleAvatar de spectreconsole

    spectreconsole/spectre.console

    11,210Ver en 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

    Organizes application functionality into a hierarchical structure of nested commands that automatically generate documentation and handle execution flow.

    C#ansi-colorscli-parserconsole
    Ver en GitHub↗11,210
  • arkweid/lefthookAvatar de Arkweid

    Arkweid/lefthook

    8,434Ver en GitHub↗

    Lefthook es un gestor de Git hooks y automatizador de flujos de trabajo que utiliza un enfoque basado en configuración para gestionar scripts activados por eventos de control de versiones. Funciona como un ejecutor de tareas en paralelo, ejecutando múltiples scripts simultáneamente para reducir el tiempo requerido para las comprobaciones de pre-commit o pre-push. El proyecto proporciona un ejecutor de hooks contenedorizado para garantizar dependencias y conjuntos de herramientas consistentes en diferentes máquinas de desarrolladores. También admite la orquestación de monorepos ejecutando scripts dentro de subdirectorios específicos y gestionando estructuras de proyectos complejas. El sistema incluye capacidades para el filtrado de archivos basado en patrones para ejecutar tareas de control de calidad solo en activos modificados. Además, admite la ejecución manual de tareas, el etiquetado y agrupación de comandos, y anulaciones de configuración local para ajustes específicos del entorno.

    Organizes related sets of commands into tags to execute multiple associated tasks as a single unit.

    Go
    Ver en GitHub↗8,434
  • folke/which-key.nvimAvatar de folke

    folke/which-key.nvim

    6,950Ver en GitHub↗

    which-key.nvim is a keybinding discovery menu and command palette for Neovim. It serves as a configuration tool to organize complex keymap hierarchies and a visual utility for browsing editor marks, registers, and spelling suggestions through a compact popup interface. The plugin differentiates itself by organizing shortcuts into nested groups with custom labels and icons, reducing the need to memorize long key sequences. It includes built-in help presets for native editor operators and motions, and supports dynamic key mapping where descriptions are evaluated at runtime. The system covers w

    Organizes keybindings into a hierarchical tree structure where each node represents a prefix for subsequent commands.

    Lualuaneovimneovim-lua
    Ver en GitHub↗6,950
  • redisearch/redisearchAvatar de RediSearch

    RediSearch/RediSearch

    6,161Ver en GitHub↗

    RediSearch is a Redis module that adds secondary indexing, full-text search, aggregation, and vector similarity search directly into the in-memory data store. It operates as an in-process search engine, extending the core key-value store with capabilities for indexing hash and JSON documents, enabling fast field-level lookups beyond primary key access. The module provides a full-text search engine built on inverted indexes, supporting stemming, fuzzy matching, and relevance scoring via tf-idf. It also includes a vector similarity search engine using a Hierarchical Navigable Small World graph

    Lists all registered commands grouped by category for discoverability.

    Cfulltextgeospatialgis
    Ver en GitHub↗6,161
  • jbeder/yaml-cppAvatar de jbeder

    jbeder/yaml-cpp

    5,931Ver en GitHub↗

    yaml-cpp is a C++ library for parsing and emitting YAML 1.2 documents. It provides a complete YAML processing pipeline, from reading YAML content into a traversable node tree to writing in-memory data structures back as YAML text. The library represents parsed YAML as a mutable tree of typed nodes, supporting scalars, sequences, maps, and aliases. It uses a recursive-descent parser to build this node tree, and a stream-based emitter to generate YAML output incrementally. Template-based type conversion enables compile-time serialization between YAML nodes and C++ types, including support for c

    Constructs hierarchical YAML structures by nesting sequence and map manipulators.

    C++
    Ver en GitHub↗5,931
  • codeigniter4/codeigniter4Avatar de codeigniter4

    codeigniter4/CodeIgniter4

    5,924Ver en GitHub↗

    CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools

    Lists all registered Spark commands grouped by category when invoked without arguments.

    PHPcodeignitercodeigniter4framework-php
    Ver en GitHub↗5,924
  • remkop/picocliAvatar de remkop

    remkop/picocli

    5,387Ver en GitHub↗

    picocli es un framework de desarrollo de interfaz de línea de comandos (CLI) y analizador de argumentos para aplicaciones basadas en JVM. Mapea opciones de línea de comandos y parámetros posicionales a métodos y campos de Java fuertemente tipados utilizando un modelo declarativo basado en anotaciones. El framework proporciona soporte específico para la compilación de imágenes nativas, produciendo los archivos de configuración de reflexión y recursos necesarios para construir binarios independientes con menor sobrecarga de inicio. Se distingue además con un sistema dedicado para generar scripts de autocompletado de shell y un estilizador de terminal ANSI para aplicar colores y estilos a la salida. El proyecto cubre una amplia gama de capacidades de aplicaciones de terminal, incluyendo despacho de comandos jerárquicos para subcomandos anidados, generación automatizada de ayuda de uso y páginas man, e implementación de shell interactivo con prompts de usuario. También incluye infraestructura para inyección de dependencias a través de fábricas personalizadas, conversión de tipos basada en plugins y el procesamiento de archivos de argumentos externos.

    Creates hierarchical command structures that allow users to navigate complex toolsets through sub-levels.

    Java
    Ver en GitHub↗5,387
  • commandlineparser/commandlineAvatar de commandlineparser

    commandlineparser/commandline

    4,817Ver en GitHub↗

    Esta biblioteca es un analizador de línea de comandos para .NET en C# y F# que implementa las convenciones POSIX getopt para mapear argumentos de shell en objetos fuertemente tipados. Proporciona un framework para construir aplicaciones de consola que procesan flags y opciones al estilo Unix. El proyecto cuenta con un sistema de enrutamiento que dirige la ejecución del programa basándose en verbos orientados a la acción, admitiendo subcomandos y acciones predeterminadas. Incluye un generador automático de ayuda que produce instrucciones de uso localizadas y pantallas de ayuda formateadas basadas en las opciones de comando definidas. El conjunto de herramientas cubre el análisis de argumentos con mapeo fuertemente tipado, validación de entrada para opciones mutuamente excluyentes o requeridas, y la capacidad de serializar objetos de opciones poblados de nuevo en cadenas de línea de comandos.

    Organizes multiple distinct commands by assigning specific option classes to unique verb identifiers.

    C#command-linedotnetdotnet-core
    Ver en GitHub↗4,817
  • cliutils/cli11Avatar de CLIUtils

    CLIUtils/CLI11

    4,322Ver en GitHub↗

    CLI11 es una biblioteca de C++ de solo cabecera (header-only) para analizar argumentos de línea de comandos y gestionar archivos de configuración. Mapea la entrada de la shell a variables tipadas y admite la creación de jerarquías de comandos complejas. La biblioteca se distingue por su soporte para subcomandos anidados con profundidad infinita y coincidencia de prefijos. Integra la gestión de configuración permitiendo cargar ajustes de la aplicación desde archivos TOML o INI, con la capacidad de recurrir a variables de entorno. El proyecto proporciona un conjunto completo de herramientas para el análisis de argumentos, incluyendo flags y argumentos posicionales, junto con un framework de validación para imponer opciones obligatorias y dependencias mutuas. También incluye la generación automatizada de documentación de ayuda con formato personalizable y un sistema de callbacks para activar lógica personalizada durante etapas específicas de análisis. Esta biblioteca sin dependencias está diseñada para C++11 y versiones posteriores.

    Supports the organization of subcommands into a nested hierarchy allowing for infinite depth.

    C++clicli-parsercpp11
    Ver en GitHub↗4,322
  • apple/swift-argument-parserAvatar de apple

    apple/swift-argument-parser

    3,728Ver en 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

    Provides hierarchical organization of CLI commands into sub-commands and groups using a declarative tree of types.

    Swift
    Ver en GitHub↗3,728
  • mojang/brigadierAvatar de Mojang

    Mojang/brigadier

    3,698Ver en 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,

    Maps hierarchical command structures to executable functions to handle complex nested subcommands and arguments.

    Javamojang-active
    Ver en GitHub↗3,698
  • space-wizards/space-station-14Avatar de space-wizards

    space-wizards/space-station-14

    3,523Ver en GitHub↗

    Space Station 14 is a C# multiplayer game and roleplay simulation framework. It is built upon an Entity-Component-System (ECS) game engine that separates logic into systems and data into components to manage complex entity interactions. The project functions as a grid-based physics simulator with a YAML data-driven prototype system for defining game objects. The project features a specialized 2D sprite rendering engine that maps server-side appearance data to client-side shaders. It implements a networking model with client-side prediction and dirty-flagged state synchronization to reduce inp

    Supports executing sequences of commands within curly braces to override order of operations or pass computed values.

    C#c-sharpgamehacktoberfest
    Ver en GitHub↗3,523
  • alecthomas/kongAvatar de alecthomas

    alecthomas/kong

    2,976Ver en 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

    Supports the organization of large-scale applications into nested command structures and sub-commands.

    Gocommand-linecommandsflags
    Ver en GitHub↗2,976
  1. Home
  2. Development Tools & Productivity
  3. CLI Command Frameworks
  4. Nested Command Structures

Explorar subetiquetas

  • Command Grouping1 sub-etiquetaLogical organization of related sub-commands to improve interface discoverability. **Distinct from Nested Command Structures:** Distinct from Nested Command Structures: focuses on logical categorization of peers rather than parent-child nesting.
  • Recursive-Descent ParsersParsing engines that use recursive function calls to match tokens against nested command hierarchies. **Distinct from Nested Command Structures:** Focuses on the specific recursive matching algorithm for token streams rather than just the hierarchical structure.
  • Shared Configuration EmbeddingMechanisms for integrating shared structures to reuse flags and settings across multiple commands. **Distinct from Nested Command Structures:** Distinct from Nested Command Structures: focuses on the reuse of configuration fields via embedding rather than the parent-child command relationship.
  • YAML Structure BuildersConstructs hierarchical YAML structures by nesting sequence and map manipulators. **Distinct from Nested Command Structures:** Distinct from Nested Command Structures: focuses on building YAML data structures, not CLI command hierarchies.