CLI Parsing Quest

I’ve started a new project. As I think about directions this could go in I’m starting to think this could end up being a huge undertaking.

I’m aiming to simplify and enhance the solution to a problem that is regularly tackled by software engineers - defining CLIs (command-line interfaces). This could include anything from a regular command-line application to bots or interactive shells, although the focus (at least initially) is on the former.

I have actually spent some time in this area a couple of times before - a bit on the concept of an interactive CLI back in 2018, and the minegauler bot in 2020. I’ve also been involved in implementing a CLI application at work (using Python’s argparse).

I feel like I’ve come up with a solid concept for a way to generically tackle the problem this time. However, when opting for a generic approach there can end up being a huge number of considerations and choices to make! One reason for writing this post is to help give me some focus on how to approach the project - the preference should be for an iterative approach, rather than having nothing to show until after months of development.

Project Fundamentals

Core principles of the project include:

Summary of general project goals:

Potential long-term goals:

Leave A Comment