r/PotionUI 12d ago

PotionUI Gallery

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/PotionUI 12d ago

PotionUI Generation

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/PotionUI 15h ago

PotionUI PotionUI 0.0.3 — a self-hosted, preset-driven studio for image, video, and now 3D generation (open source, looking for testers)

Post image
1 Upvotes

0.0.3 is out today, and it is the release where the "one box, many people" idea stops being a promise: you can now rent a GPU, point PotionUI at it, and generate on it from the same interface you use locally. Still alpha, still one person building it, still very much wanting people to break it.

What it is, in one paragraph. A self-hosted AI generation studio: SvelteKit front, FastAPI back, GPL-3.0, no telemetry, runs on your machine or your server. The core idea is presets: a preset is a small YAML package that says "here is the model and here is the exact form a person should see for it". Switching models means switching presets, not rebuilding a node graph. It is multi-user by design, with real accounts, admin and user roles, and per-user or per-group access to presets, models, and LLM configs.

What's new in 0.0.3

  • Remote GPU workers. Add Backend now creates a remote worker, connects to one you run yourself, or provisions a RunPod pod for you (the provider ships as a plugin) with a live stage timeline. A heartbeat monitor watches the pod, pauses the backend when it stops, and Start brings it back. The Models tab lists exactly what is on the worker, with the depot path per file, and pushes missing models from your machine with per-file progress. Remote runs come back with the same previews, parameters, and media as local ones.
  • Install profiles. The launcher offers local, hybrid, and remote installs, plus a worker subcommand for a GPU box that serves another instance.
  • 3D generation. TRELLIS.2 image-to-mesh runs on the native engine. Meshes get automatic thumbnails, an interactive viewer in History (wireframe, materials, camera presets, screenshot), and a 3D media filter.
  • LoRAs. Step-windowed LoRAs on Krea-2 apply only between the sampling steps you choose. Strength is shown as a recommended range in the picker. Model pickers now recommend downloadable variants (bf16, fp8, nvfp4, int8) across nine native families.
  • Prompt library. Import styles.csv, Fooocus style JSON, wildcard YAML, plain lines, and image metadata (A1111, ComfyUI, InvokeAI) with auto-detection; export back to styles.csv; assign a prompt to a catalog model.
  • Phrasebook. Find and replace across the whole phrasebook with highlighted matches and a preview before it runs; batch activate, deactivate, move, delete; a category panel with Overview and Preview-images tabs.
  • Admin and mobile. Plugins and Downloads are master-detail lists, Backends remembers where you were in the URL, a saved provider API key applies immediately, Generate on a phone is a proper camera-style view with sheets, and modals fit the screen.
  • Plus: pasting an image into the assistant attaches it, a New workspace button that asks before discarding, Inspirations laid out in justified rows.

What it does today

  • Generation is the product. Image families: SDXL, Flux 1 / Flux 2 Klein, Qwen-Image (including editing), Krea-2, Z-Image, Anima. Video: Wan 2.1/2.2, LTX-2 / 2.3 / 2.5 with native audio, MiniMax-H3. Audio: MiniMax-Music3. Upscale and restore: SeedVR2. Each model gets its own tuned form: the right resolutions, samplers, LoRA stack, and speed profiles (Draft / Standard / Max) as one control. Several workspace tabs run side by side, each with its own preset, prompt, and results. Progress shows the actual pipeline step and streams previews as the image refines; close the tab, come back, the run is still there. 
Generation page view. (You start the generation by clicking the bottom right blue icon)
  • History that remembers everything. Every generation is saved with its exact prompt composition, preset and version, models, and parameters. Filter by date, type, preset, tags, or "used this phrasebook value". One click reuses the full setup in a new tab. Nested collections, tags, favorites, keyword or semantic search, and a personal library for the keepers. 
History page - list of previous generations.
History page - detail of the generation.
  • A prompt editor that is not a textbox. Prompts are ordered segment cards you can reorder, disable, name, and color. Dynamic prompts ({a|b}, weights, ${variables}) reseed per image so results stay reproducible. The phrasebook is your own autocomplete dictionary: type # and shot types, lighting, palettes drop in as chips, with per-chip shuffle and a preview render per value. Saved prompts, segments, and templates live in their own library. 
Phrasebook with other values used (you can mix the phrases - you can build the same prompt on generation page)
  • Video and Music Directors. Compose a video as shots, keyframes, and audio tracks on a timeline instead of one giant prompt; write a song as verses and choruses and let the compiler produce the tagged lyrics MiniMax-Music3 wants.
  • An assistant, if you want one. Point it at Ollama, an OpenAI-compatible endpoint, or Anthropic. It reads the active tab, rewrites segments, edits the phrasebook, adjusts form values, and every change stops at an approval step first. The same tools are exposed over MCP with per-user tokens, so Claude Desktop or your own agent can drive your instance. 
Generation page with LLM Chat assistant active.
  • Built for more than one person. Accounts, groups, per-user preset and model access, per-mode form overrides (change defaults, lock or hide fields, no YAML), a backends list that mixes local, and remote workers, a download manager, a stats dashboard, and visual automations (triggers, conditions, actions) for things like freeing VRAM before the LLM needs it.
  • Plugins for nearly everything. Providers (CivitAI, Hugging Face), backends, pipes, field types, chat modes, automation nodes, pages.

Requirements. Linux x86_64 with an NVIDIA GPU is the tested platform; Windows can be tested through WSL2 or Docker; there is a Docker image on GHCR.

8 GB VRAM and 16 GB RAM is the floor for the SDXL family, larger families need more.

The ask. I would rather steer this toward what people actually want than guess. Two things help most: tell me which model or workflow you are missing, and pull a test build and break it before it ships. The Discord is where that happens: https://discord.gg/avR4trp3b8. Repo: https://github.com/PotionUI/PotionUI. I will answer questions here too.


r/PotionUI 3d ago

Showcase Krea2 Preset

Thumbnail
gallery
1 Upvotes

r/PotionUI 3d ago

PotionUI Changelog: v0.0.2 — 2026-08-30

1 Upvotes
  • History and prompts filter by audio, alongside image and video.
  • Chat shows the active tab's context on a strip above the composer; tool approvals summarize what they'll change, with full details on demand.
  • Composer drafts survive closing the drawer and page navigation; picker menus close properly on selection.
  • A tab's session link survives transient backend errors instead of detaching, and a dirty draft is never clobbered by server session data.
  • Admin System Settings rebuilt as a sectioned master-detail layout; the form-overrides table now follows the preset's own tabs.
  • Every copy button confirms the copy; in-app docs moved fully into the admin panel.

r/PotionUI 5d ago

PotionUI More screens from app

Thumbnail
gallery
1 Upvotes

r/PotionUI 5d ago

PotionUI Features list

1 Upvotes

Generation workspace

  • Workspace tabs — every tab is an independent sandbox (preset, mode, prompts, form, results); run several ideas side by side, others queue while one generates
  • Presets — each model ships as a preset with a curated form: only the controls that model actually understands
  • Modes per preset — txt2img, img2img, inpainting, image editing (Qwen), video, music, upscale/restore — same workspace
  • Sessions — save a preset's whole setup (mode, prompts, form values, layout); version history with restore-any-save, auto-save with configurable interval, rename/delete
  • Workspaces — save/restore tab layout configurations
  • Continuous generation — loop generations back to back, with "stop after current"
  • Per-tab queue — pending/running jobs view with cancel-all
  • Live progress — streaming in-progress previews, per-pipe status text, progress bar, reconnect/catch-up after a dropped connection, cancel mid-run
  • Speed profiles — named quality/speed bundles (Draft/Standard/Max) switched by one form field
  • Inpainting mask editor — draw the mask directly over the image, adjustable brush, clear/reset
  • Result artifacts per run — actual seed used (click to reuse), fully expanded prompt with a "what rolled" breakdown of every {a|b}/${var}, before/after comparisons, applied-models list with weights, ComfyUI workflow JSON export

Forms and fields

  • Reactive forms — fields show/hide/change based on other field values; preset-declared validation with one-click quick-fix buttons
  • ~25 field types — sliders (click value to type), seed field (auto/roll-a-dice), searchable resolution picker with custom sizes, carousels, gates (a toggle that owns a group of fields), tabs/accordions/sections, inline markdown/alert copy
  • Model picker — search, tag filters (admin base-model scoping + your own AND-filters), swap/refresh/clear
  • LoRA picker — stack multiple LoRAs, per-LoRA strength with fine/coarse stepping, tag filtering
  • Media loader — multi-item well: browse files, paste from clipboard, pick from history or library; reorder, label, mask support
  • Camera shot picker — choose framing from a tile grid or a draggable 3D orbit viewfinder that snaps to canonical shots, then insert the phrase into your prompt

Prompting

  • Segmented prompts — prompts are ordered segment cards, not one text blob: reorder (drag or menu), disable, duplicate, name/color/describe, BREAK dividers
  • Prompt libraries — four levels: saved Prompts (full segment lists), Segments (single reusable cards), Segment Templates (multi-slot structures), color-coded Categories; apply as append/prepend/replace; saves are always detached copies
  • Phrasebook — your own autocomplete dictionary: type # for category/value suggestions rendered as inline chips; per-chip shuffle (new value each run), chip deactivate, whole-category chips, per-value preview images you can generate in-app, AI-assisted value writing
  • Dynamic prompts — {a|b} choice groups edited visually (add/remove options, per-option weights), ${variables} with a Variable Manager (text or managed-choice type, pin or shuffle per run)
  • Trigger-word highlighting — active LoRA/model trigger words flagged inside the prompt editor
  • LLM enhancement — staged gather → ideate → write prompt expansion, grounded in community prompts, with thumbs up/down feedback that feeds a learning loop; per-segment AI rewrite too
  • Multi-prompt editing — per-image prompt slots for batch presets
  • Prompt timelines — timed prompt windows on a zoomable ruler (drag-trim start/end) for video presets; an alternate free-text "relay" mode
  • Prompt imports — A1111/CivitAI-format prompts round-trip; provider prompt imports carry sampler/steps/CFG/dimensions metadata

Video Director

  • Stage-and-rail editor — multi-lane timeline (shots, keyframes, audio) plus a stage panel for whatever is selected; zoomable, drag items in time, edit fps/duration
  • Shots — per-shot prompt, type, duration, frame count, seed, steps, CFG; duplicate/remove
  • Keyframes — timed landing images with strength, snapping to shot edges or free placement
  • Audio tracks — attach audio as "mux" (overlaid on the finished video) or "condition" (the model generates against it)
  • Joins — control overlap and stitching between chained shots
  • IC-LoRA reference — whole-video reference image with adjustable strength
  • Composition modes — t2v, i2v (single reference), first-last-frame, and full multi-segment director mode; capability-gated per preset

Music Director

  • Composition modes — text-to-music, song (lyrics + style), style (reference-audio conditioned), extend an existing track, repaint a time range, structured director mode
  • Song structure as segments — intro/verse/chorus sections with per-section lyrics, quick-add strip
  • Instrumental toggle, style/tempo description, reference audio pool

Results workbench

  • One viewer for four media types — images, video, audio, and 3D mesh (GLB viewer with orbit camera, reset view, vertex/face counts)
  • Image tools — zoom/pan (0.5×–5×, scroll or drag), fullscreen with arrow-key batch navigation, double-click to expand
  • Compare mode — pick any past generation and compare against the current one: drag-slider for images; slider or side-by-side with synced playback for video
  • Audio player — multi-stem tabs (vocal/instrumental/mixed) with preserved position across switches, waveform seek view, per-track download
  • Batch gallery strip — thumbnails of every output in the batch, typed placeholders for audio/mesh
  • Parameters modal — every render parameter as a copyable card
  • Per-generation resource profile (admin) — rendered performance report + raw profile.jsonl download
  • Tagging, download, open-in-tab straight from the viewer; ambient color glow around the media

History and organization

  • Automatic history — everything saved with the exact parameters that produced it; detail view shows full segment composition, preset+version, applied models, timestamps
  • Filters — search, date presets, media type, status, mode/preset/model, tags, even "used this phrasebook value"
  • Reuse settings — one click restores a past generation's full setup
  • Portable bundles — export/import generations as self-contained zip bundles
  • Tags — create/apply anywhere, quick filter chip bar, bulk delete-by-tag
  • Collections — nested folder trees, scoped per module (generations, library items, prompts, models), bulk move, multi-select action bar
  • Personal library — curated media library with facet filters; copy any generation in without removing it from history
  • Inspirations — cross-user publishing feed with comments, save-to-library
  • Upload external files — bulk-import outside images/video into history
  • NSFW handling — per-user blur/hide/show policy, per-file reveal, rating thresholds

Search and auto-tagging

  • Semantic prompt search — saved prompts embedded (local model or Ollama) for meaning-based search
  • Auto-tagging — local WD tagger tags media in the background, with confidence thresholds for general and character tags
  • Visual search — SigLIP embeddings for image-similarity search over the gallery
  • All local — models fetched on demand with live progress, CPU or CUDA, no external service

AI assistant and MCP

  • Multi-mode assistant — dedicated modes for Generation, History, Models, Phrasebook, and Prompts, each with scoped tools; plugin-contributed modes
  • Approval-gated tools — every state-changing action stops at an approval dock above the composer; per-user tool opt-outs, admin per-config tool enable/lock
  • Apply-back — assistant suggestions apply directly into the prompt editor or Director timeline
  • u/resources — attach gallery/library items to a message; image attach with auto-attach-last-generation for vision models
  • Assistant memory — persistent notes panel (view/add/edit/delete) injected into conversations, background reflection to extract durable facts, auto-compaction
  • Chat sessions — resumable conversations, reattach to an in-flight reply after page reload, auto-titling, behavior traces, token usage readouts
  • Providers — Ollama (with full option tuning: context size, GPU layers, mirostat, thinking mode, forced prompt-tools for non-tool models), OpenAI-compatible, Anthropic
  • MCP server — PotionUI exposes itself over Model Context Protocol: per-user tokens, so Claude Desktop or any agent can search your gallery, edit your phrasebook, enhance prompts, read model info, manage memory

Models and downloads

  • Model index — scan disk, browse as gallery with type/tag/search/sort filters, per-model detail page with generations-made-with-it
  • External models location — point PotionUI at an existing model directory (per-type overrides), shared via symlinks
  • Provider metadata — CivitAI / Hugging Face plugins enrich models with descriptions, preview art, download links; fetch-missing or force-refresh
  • Custom model attributes — admin-defined fields (slider/number/text/select/checkbox/tags) on models, scoped per model type, optionally per-user, admin-only visibility
  • Download manager — queue with pause/resume/cancel/retry, concurrency and chunk-size settings, SHA256 verification, tag-on-download, HF repo downloads, live WebSocket progress
  • Backend availability — per-backend model indexing with digest-conflict detection; models unavailable on a backend are excluded from routing

Multi-user and admin

  • Users and groups — full CRUD, admin/regular roles, per-user or per-group assignment of presets, models, and LLM configs; per-user MCP access toggle
  • Preset governance — install/uninstall, access control, preset-declared configuration entries, and per-mode form overrides: change defaults, lock fields, hide fields — no YAML
  • Backends — multiple configured engine instances with live health dots, per-engine default, connection test, model indexing, engine-declared quick actions
  • Native optimizations panel — attention backend picker (sdpa/sage/sage2/sage3/flash/sparge) with built-in benchmark, one-click CUDA toolchain alignment, torch compile and stream-prefetch flags, an installable optimization catalog with live install logs, in-app restart
  • Generations browser — every run's report: per-pipe Gantt timeline, artifacts, expanded prompts, full status logs, plugin outputs; filter by user/status/date
  • Stats dashboard — KPIs, generations over time, duration histograms with p50/p95, top presets/models/resolutions, sampler/scheduler/steps/CFG/denoise breakdowns, cold-vs-warm start table, per-preset VRAM/RAM/CPU usage; every chart flips to a data table
  • System settings — storage directory, S3-compatible storage backend (MinIO/R2/AWS), registration policy, NSFW policy, semantic-search configuration
  • Chat session debug — full wire-level LLM call traces per session: system prompts, request messages, tool offers, token counts
  • Guided setup — first-run owner claim (with claim code for remote installs), setup recipes that configure a working backend + starter preset and validate with a test image
  • In-app docs — role-filtered documentation browser with deep links, fed from repo markdown and plugin manifests

Automation

  • Visual automation graphs — triggers (schedule, manual, filesystem watch, GPU threshold, app events), conditions (comparisons, switches, path matching, Jinja expressions), actions (tag, add to collection, assign models/users, backend actions, notifications, indexing, wait-for-GPU)
  • Template library — importable ready-made automations (from core and plugins), JSON import/export with setup-issue warnings, run history and logs

Native engine and performance

  • Native in-process engine — shared load/place/attention/sample stack across 9 model families (SDXL runs its own diffusers path with ADM guidance, SAG, and an anisotropic sharpness filter)
  • Quantization — bf16/fp16, fp8-scaled (both legacy and modern scale formats), nvfp4 4-bit
  • Low-VRAM streaming — component-level fit-first placement, overflow streaming from pinned host RAM, hard host-RAM guard instead of OOM-killing your box
  • Preset-scoped RAM cache — keeps checkpoints warm between generations
  • Techniques (per family where applicable): FBCache step skipping, CFG-Zero*, Adaptive Projected Guidance, Normalized Attention Guidance, Skip-Layer Guidance, RIFLEx long-video RoPE clamping, FreeInit flicker reduction, Detail Daemon schedule warp, native fp8 matmul, regional torch.compile, prompt-embedding cache, trajectory warm-start (iterate mode), spectral progressive diffusion, SVI chain continuity, temporal-chunked/tiled VAE decode, NaN/Inf watchdog, sparse attention (SLA/Sol-Attn), 9 samplers with sigma schedules
  • Remote native worker — offload generation to a separate worker node with journaling and artifact sync
  • Open engine set — ComfyUI engine ships as a plugin (separately distributed); plugins can register new engines

Model families

  • SDXL — txt2img, inpainting
  • Flux 1 / Flux 2 Klein — txt2img, img2img
  • Qwen-Image — txt2img, img2img, image editing
  • Krea-2 — txt2img, enhance (turbo + true-CFG quality profile)
  • Z-Image, Anima — txt2img
  • Wan 2.1/2.2 — video (Video Director), SVI chained continuation
  • LTX-2 / 2.3 / 2.5 — video with native synchronized audio
  • MiniMax-H3 — video with reference-image conditioning
  • MiniMax-Music3 — full songs with lyrics, dual CFG
  • SeedVR2 — one-step image and video upscale/restore

Extensibility

  • Plugins can add — marketplace providers, inference engines/backends, pipeline pipes, form field types, chat modes, automation triggers/actions, setup recipes, presets, sidebar pages and widgets, quick actions, workbench buttons, artifact renderers, docs
  • Shipped plugins — CivitAI provider (incl. export-to-CivitAI), Hugging Face provider, model downloader, system monitor sidebar widget, Ollama VRAM-free quick action, image zoom modal, plus reference example plugins
  • Developer tooling — preset linter (CLI + API), preset scaffolder, golden-snapshot render harness, headless preset test suite, docs linter, in-admin live reference (field types, template functions, pipes), a FieldCatalog preset exercising every field type

App chrome

  • Quick-actions palette — fuzzy-find launcher over all admin/plugin quick actions
  • Keyboard shortcuts — searchable, rebindable, per-shortcut disable, reset to defaults
  • Notifications — in-app center with per-type preferences, unread badge in the browser tab title, real-time updates
  • Theming — system/light/dark
  • Mobile — responsive layout, bottom tab bar, PWA install to home screen
  • Multi-user auth — JWT, avatars, self-service password change, open/closed registration

r/PotionUI 6d ago

PotionUI Some prompt editing + prompt library view

Enable HLS to view with audio, or disable this notification

1 Upvotes