Pyjoyment.Command.Author.generate.plugin - Plugin generator command
Usage: APPLICATION generate plugin [OPTIONS] [NAME]
pyjo generate plugin
pyjo generate plugin AliceSearch
pyjo generate plugin -f MyApp.Ext.Test
Options:
-f, --full Do not prepend "Pyjoyment.Plugin."
-h, --help Show this summary of available options
Pyjoyment.Command.Author.generate.plugin generates directory structures
for fully functional Pyjoyment plugins: a distribution with
pyproject.toml, which builds with hatchling, and a test, which
uv run python -m Pyjo.Prove -l -r t runs, as does uv run pytest,
with pytest of the dependency group dev. The module of a plugin is in the
namespace Pyjoyment.Plugin, which the distribution adds to without the
__init__.py files of the namespace. AGENTS.md, which CLAUDE.md
imports, tells a coding agent how the plugin is made, tested and built, and
where the skills of Pyjoyment are.
This is a core command, that means it is always enabled and its code a good
example for learning to build new commands, you’re welcome to fork it.
See Pyjoyment.Commands for a list of commands that are available by
default.
-
class Pyjoyment.Command.Author.generate.plugin.Pyjoyment_Command_Author_generate_plugin(**kwargs: Any)[source]
Pyjoyment.Command.Author.generate.plugin inherits all attributes and
methods from Pyjoyment.Command and implements the following new
ones.
-
description = 'Generate Pyjoyment plugin directory structure'
description = plugin.description
plugin.description = 'Foo'
Short description of this command, used for the command list.
-
run(*args: str) → None[source]
plugin.run(*sys.argv[1:])
Run this command.
-
usage = 'Usage: APPLICATION generate plugin [OPTIONS] [NAME]\n\n pyjo generate plugin\n pyjo generate plugin AliceSearch\n pyjo generate plugin -f MyApp.Ext.Test\n\nOptions:\n -f, --full Do not prepend "Pyjoyment.Plugin."\n -h, --help Show this summary of available options\n'
usage = plugin.usage
plugin.usage = 'Foo'
Usage information for this command, used for the help screen.