How a-temur/metabooster works
Metabooster takes a selected directory, works on a copy, and injects configured metadata into supported media and web files. Its runtime also creates per-directory YAML context and JSON-LD output, optionally embedding JSON-LD in HTML. The GUI exposes directory selection, custom descriptions, and JSON-LD editing; the README also documents context-menu and CLI modes. The sampled excerpts show portions of the processing logic, so uncertain links between unsampled mode handling and individual stages are omitted.
Main entry points: main.py Directory processing · gui.py Desktop GUI · gui_context.py GUI feedback bridge · schema.py Metadata defaults
Components 18
User interaction
- Desktop GUI
gui.py - GUI feedback bridge
gui_context.py
Metadata processing
- Metadata defaults
schema.py - Directory processing
main.py - Working copy
main.py - File type dispatch
main.py - Image and video metadata
main.py - PDF metadata
main.py - HTML and CSS comments
main.py
Metadata outputs
- Directory YAML
main.py - JSON-LD generation
main.py
External tools
- ExifTool
- FFprobe
- FFmpeg
Other components
- User
- Selected files
- Processed directory
- User configuration
conf.json
Connections 25
- User → Desktop GUI: configures
- Desktop GUI → Directory processing: starts processing
- Desktop GUI → Metadata defaults: loads defaults
- Desktop GUI → User configuration: saves edits
- Desktop GUI → GUI feedback bridge: registers callback
- Directory processing → GUI feedback bridge: sends feedback
- Selected files → Directory processing: provides directory
- Directory processing → Metadata defaults: uses defaults
- Directory processing → Working copy: creates copy
- Working copy → Processed directory: writes copy
- Directory processing → File type dispatch: scans files
- File type dispatch → Image and video metadata: routes media
- File type dispatch → PDF metadata: routes PDFs
- File type dispatch → HTML and CSS comments: routes web files
- Directory processing → Directory YAML: writes metadata
- Directory processing → JSON-LD generation: builds JSON-LD
- Image and video metadata → ExifTool: writes tags
- PDF metadata → ExifTool: writes tags
- Image and video metadata → FFprobe: reads duration
- Image and video metadata → FFmpeg: creates thumbnails
- JSON-LD generation → Processed directory: writes JSON-LD
- Directory YAML → Processed directory: writes YAML
- HTML and CSS comments → Processed directory: updates files
- Image and video metadata → Processed directory: updates media
- PDF metadata → Processed directory: updates PDFs