An Authum plugin is any Python module which:
- Is located in
sys.path
- Is named
authum-*
- Provides implementations of one or more of the pluggy hookspecs defined in authum/plugin.py.
See the built-in plugins in this directory for examples.
- Use click for CLI input (command options and parameters, prompting, etc.).
- Use authum.gui to prompt for input when no TTY is available.
- Use rich for output. Only use
sys.stdout for output
that may be piped to another program or
eval
'ed by a shell. Send everything else to sys.stderr.- Use logging for diagnostics. rich.logging.RichHandler will be used by default.
- Use
Console.print()
to write to
sys.stdout
. Setstderr=True
for fancy tables, status bars, etc.