tristan 6f31a5d27c object_rework: working MVP with runtime CommandNode tree
- BaseCommandNode (abstract) / CommandNode(T) split for heterogeneous tree
- Flag(T) with compile-time type branching, Parsable/Coercable modules
- Arg double-process invariant enforcement
- App.generate macro builds CommandNode tree from Command subclasses
- Command#initialize generated via macro finished, populates ivars from handler
- Reserved -h/--help enforcement in Flag#check!
- MatchType::Help added, SubCommand dispatch fixed
- design.adoc: added Planned Features (markdown docs, bash completion)
- Makefile: tabs, .DEFAULT_GOAL, doc_show target

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-09 22:49:55 -05:00
2026-08-09 15:20:06 -05:00
2026-08-09 15:20:06 -05:00
2026-02-23 10:30:34 -06:00
2026-08-09 15:20:06 -05:00
2026-02-23 13:09:33 -06:00
2026-08-09 15:20:06 -05:00
2026-08-09 15:20:06 -05:00

CliGenerator

This is a crystal project to manage setting up OptionParser objects based around "Command" objects and arguments you define inside them.

Installation

  1. Add the dependency to your shard.yml:

    dependencies:
      cligen:
        git: https://git.arcanium.tech/tristan/cligen
    
  2. Run shards install

Usage

require "cligen"

Contributors

S
Description
No description provided
Readme MIT 369 KiB
Languages
Crystal 100%