Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,150 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARC

A tool for building declarative, and highly extendable CLI systems for Python 3.10+

ARC Features

  • Command line arguments based on python type hints
  • Arbitrary command nesting
  • Automatic --help documentation
  • Fully Extensible with custom middlewares, types, validators, parameter configurations, etc...

Links

Quick Start

import arc

@arc.command
def hello(name: str):
    """My first arc program!"""
    arc.print(f"Hello {name}!")

hello()
$ python hello.py Sean
Hello, Sean!
$ python hello.py --help
USAGE
    hello.py [-h] [--] name

DESCRIPTION
    My first arc program!

ARGUMENTS
    name

OPTIONS
    --help (-h)  Displays this help message

Installation

$ pip install arc-cli

Clone for development

$ git clone https://github.com/seanrcollings/arc
$ uv sync

Tests

Tests are written with pytest

$ pytest

About

arc is a tool for building declaritive, and highly extendable CLI tools for Python 3.10+

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages