Skip to content

CLI entrypoint #6

@0xddom

Description

@0xddom

For the basic implementation we are going for a CLI application. However, not all CLIs are equal.

This medium post talks about good CLI interfaces.

We should strive to reach as much points as possible. The main problem with our CLI is that we have several things our application can do (training, detection, db management, etc). Two approaches can be used here:

  • One single executable that has several subcommands (i.e. git)
  • Several executables that share a common codebase (i.e. radare2)

Both approaches can work with rust due to how cargo compiles. Which approach to use will be then influenced by what CLI frameworks are available to use.

The Awesome Rust list can be a good starting point for trying out CLI frameworks to see what fits our needs the most and complies as much as possible with the 12 factor philosophy.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions