src.modes.creator.template_library module#

Template Library for Marcus Creator Mode.

Provides project templates to prevent illogical task assignments like “Deploy to production” before any code exists.

class src.modes.creator.template_library.ProjectSize[source]#

Bases: Enum

Project size categories.

MVP#

Minimum viable product size

Type:

str

SMALL#

Small project size

Type:

str

MEDIUM#

Medium project size

Type:

str

LARGE#

Large project size

Type:

str

ENTERPRISE#

Enterprise project size

Type:

str

MVP = 'mvp'#
SMALL = 'small'#
MEDIUM = 'medium'#
LARGE = 'large'#
ENTERPRISE = 'enterprise'#
class src.modes.creator.template_library.TaskTemplate[source]#

Bases: object

Template for a single task.

name#

Name of the task

Type:

str

description#

Detailed description of the task

Type:

str

phase#

Phase this task belongs to

Type:

str

estimated_hours#

Estimated hours to complete the task

Type:

int

priority#

Task priority level (default: MEDIUM)

Type:

Priority

labels#

Labels/tags for categorizing the task

Type:

List[str]

dependencies#

Names of tasks that this task depends on

Type:

List[str]

optional#

Whether this task is optional (default: False)

Type:

bool

conditions#

Conditions for when to include this task

Type:

Dict[str, Any]

name: str#
description: str#
phase: str#
estimated_hours: int#
priority: Priority = 'medium'#
labels: List[str]#
dependencies: List[str]#
optional: bool = False#
conditions: Dict[str, Any]#
__init__(name, description, phase, estimated_hours, priority=Priority.MEDIUM, labels=<factory>, dependencies=<factory>, optional=False, conditions=<factory>)#
Parameters:
Return type:

None

class src.modes.creator.template_library.PhaseTemplate[source]#

Bases: object

Template for a project phase.

name#

Name of the phase

Type:

str

description#

Description of the phase

Type:

str

order#

Order in which this phase should be executed

Type:

int

tasks#

List of tasks in this phase

Type:

List[TaskTemplate]

name: str#
description: str#
order: int#
tasks: List[TaskTemplate]#
get_required_tasks()[source]#

Get only required tasks.

Returns:

List of required (non-optional) tasks in this phase

Return type:

List[TaskTemplate]

__init__(name, description, order, tasks)#
Parameters:
Return type:

None

class src.modes.creator.template_library.ProjectTemplate[source]#

Bases: object

Base class for project templates.

name#

Name of the project template

Type:

str

description#

Description of the project template

Type:

str

category#

Category of the project (e.g., “web”, “api”, “mobile”)

Type:

str

phases#

List of phases in this project template

Type:

List[PhaseTemplate]

default_size#

Default project size (default: MEDIUM)

Type:

ProjectSize

name: str#
description: str#
category: str#
phases: List[PhaseTemplate]#
default_size: ProjectSize = 'medium'#
get_all_tasks(size=None)[source]#

Get all tasks adjusted for project size.

Parameters:

size (Optional[ProjectSize]) – Target project size. If None, uses default_size

Returns:

List of tasks adjusted for the specified project size

Return type:

List[TaskTemplate]

__init__(name, description, category, phases, default_size=ProjectSize.MEDIUM)#
Parameters:
Return type:

None

class src.modes.creator.template_library.WebAppTemplate[source]#

Bases: ProjectTemplate

Template for full-stack web applications.

This template includes phases for setup, design, backend development, frontend development, testing, and deployment.

__init__()[source]#

Initialize the web application template with predefined phases.

Return type:

None

class src.modes.creator.template_library.APIServiceTemplate[source]#

Bases: ProjectTemplate

Template for API-only services.

This template includes phases for setup, design, implementation, testing & documentation, and deployment.

__init__()[source]#

Initialize the API service template with predefined phases.

Return type:

None

class src.modes.creator.template_library.MobileAppTemplate[source]#

Bases: ProjectTemplate

Template for mobile applications.

This template includes phases for setup, core features, platform integration, and testing & release.

__init__()[source]#

Initialize the mobile app template with predefined phases.

Return type:

None