# yukiigore/invitation-workflow-manager architecture

> Architecture diagram of the GitHub repository yukiigore/invitation-workflow-manager, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yukiigore/invitation-workflow-manager
- Repository: https://github.com/yukiigore/invitation-workflow-manager

## Overview

Invitation Workflow Manager is documented as a desktop tool for organizing invitation images and preparing personalized captions for manual use. The sampled runtime shows a smaller command-line workflow: `src/main.py` loads PNG paths, derives usernames from filenames, renders a template, and prints captions. The README also lists preview, copy, reveal, progress, and resume features, but their implementation and wiring are not present in the sampled source; those links are therefore omitted.

Main entry points: [`src/main.py`](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/main.py) (Workflow runner), [`src/core/image_loader.py`](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/image_loader.py) (PNG loader), [`src/core/template_engine.py`](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/template_engine.py) (Template engine), [`templates/template.txt`](https://github.com/yukiigore/invitation-workflow-manager/blob/main/templates/template.txt) (Caption template)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Workflow entry"]
  node_main["Workflow runner<br/>[main.py]"]
end

subgraph group_assets["Invitation assets"]
  node_image_loader["PNG loader<br/>[image_loader.py]"]
  node_image_folder[("Image folder")]
end

subgraph group_captions["Caption generation"]
  node_template_engine["Template engine<br/>[template_engine.py]"]
  node_template_file["Caption template<br/>[template.txt]"]
  node_printed_caption["Printed caption"]
end

subgraph group_documented["Documented capabilities"]
  node_desktop_capabilities["Preview, copy, reveal, progress, resume"]
end

node_user(("Operator"))

node_user -->|"runs"| node_main
node_main -->|"loads images"| node_image_loader
node_image_loader -->|"reads PNGs"| node_image_folder
node_main -->|"renders caption"| node_template_engine
node_template_engine -->|"reads template"| node_template_file
node_main -->|"prints caption"| node_printed_caption

click node_main "https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/main.py"
click node_image_loader "https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/image_loader.py"
click node_template_engine "https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/template_engine.py"
click node_template_file "https://github.com/yukiigore/invitation-workflow-manager/blob/main/templates/template.txt"
click node_desktop_capabilities "https://github.com/yukiigore/invitation-workflow-manager/tree/main/src"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_main toneBlue
class node_image_loader,node_image_folder toneAmber
class node_template_engine,node_template_file,node_printed_caption toneMint
class node_desktop_capabilities toneRose
class node_user toneIndigo
```

## Components

### Workflow entry

- [Workflow runner](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/main.py): `src/main.py`

### Invitation assets

- [PNG loader](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/image_loader.py): `src/core/image_loader.py`
- **Image folder**

### Caption generation

- [Template engine](https://github.com/yukiigore/invitation-workflow-manager/blob/main/src/core/template_engine.py): `src/core/template_engine.py`
- [Caption template](https://github.com/yukiigore/invitation-workflow-manager/blob/main/templates/template.txt): `templates/template.txt`
- **Printed caption**

### Documented capabilities

- [Preview, copy, reveal, progress, resume](https://github.com/yukiigore/invitation-workflow-manager/tree/main/src): `src`

### Other components

- **Operator**

## Connections

- Operator → Workflow runner: runs
- Workflow runner → PNG loader: loads images
- PNG loader → Image folder: reads PNGs
- Workflow runner → Template engine: renders caption
- Template engine → Caption template: reads template
- Workflow runner → Printed caption: prints caption
