Skip to content
Back to portfolio
AI & Automation / Case study

Unipuni

A native Apple Silicon studio for captioned datasets, local LoRA training, image generation and masked editing.

A training loop creators can actually use

Unipuni keeps dataset preparation, caption editing, training and testing together. Named datasets carry their own trigger tokens, while generated results and reusable references stay attached to a portable workspace.

Multiple model families, explicit execution

FLUX.2 Klein runs through Flux2CLI; SDXL uses a dedicated Python/MPS worker. Optional Qwen Image Edit support has its own runtime and model requirements. Separate generation and training settings respect the differences between model families instead of pretending that adapters are interchangeable.

The native details matter

Tauri, Rust, React and TypeScript connect the interface to local processes. A persisted serial queue recovers pending and interrupted work, prevents competing inference jobs and keeps the Mac awake during execution. Model and runtime installation report progress; child processes are stopped when the application exits.

Portable, inspectable creative data

The .unipini package stores captioned photos, references, adapters and outputs with relative paths. Image-to-image references, brush and lasso masking, and result inspection support an iterative local workflow. Full inference still depends on installed weights, available memory and the selected runtime.

Explore the source

View the repository

Inside the application

Unipuni — the local training interface, captured from the macOS application. No training job is running in this view.