pjkm.cli.commands.workspace

Workspace commands — multi-repo platform scaffolding.

Attributes

Functions

workspace([name, service, blueprint, directory, dry_run])

Create a multi-service workspace with shared infrastructure.

Module Contents

pjkm.cli.commands.workspace.SERVICE_TEMPLATES: dict[str, dict][source]
pjkm.cli.commands.workspace.PLATFORM_BLUEPRINTS: dict[str, list[str]][source]
pjkm.cli.commands.workspace.workspace(name=typer.Argument(help='Workspace/platform name'), service=typer.Option([], '--service', '-s', help='Service to create: name:template (e.g. api:api, jobs:worker, site:web)'), blueprint=typer.Option('', '--blueprint', '-b', help='Use a pre-defined blueprint: microservices, data-platform, scraping-platform, ml-platform, fullstack'), directory=typer.Option('', '--dir', '-d', help='Parent directory (default: cwd)'), dry_run=typer.Option(False, '--dry-run', help='Show what would be created without doing it'))[source]

Create a multi-service workspace with shared infrastructure.

Generates multiple pjkm projects, a VS Code workspace file, root docker-compose, shared Makefile, and GitHub Actions.

Service format: name:template — see pjkm workspace –help for templates. Or use –blueprint for a pre-defined platform layout.

Examples

pjkm workspace my-platform -s api:api -s jobs:worker -s site:web pjkm workspace my-platform –blueprint microservices pjkm workspace my-platform –blueprint data-platform pjkm workspace my-platform –blueprint scraping-platform –dry-run

Parameters:
Return type:

None