explaingit

rosekhlifa/image-studio

Analysis updated 2026-06-24

50TypeScriptAudience · developerComplexity · 3/5LicenseSetup · easy

TLDR

Wails desktop client for OpenAI-compatible image models that streams the Responses API to dodge Cloudflare 100-second timeouts, with a Konva editor and local IndexedDB history.

Mindmap

mindmap
  root((Image Studio))
    Inputs
      Text prompts
      Source images
      API key
    Outputs
      Generated images
      Edit masks
      History entries
    Use Cases
      Long timeout image jobs
      Local image editing
      Workspace tabs
    Tech Stack
      Go
      React
      TypeScript
      Wails
      Konva
      SSE
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run long image-generation jobs that would otherwise hit Cloudflare 524 timeouts

USE CASE 2

Edit images locally with masks, annotations, and rotate, flip, crop tools

USE CASE 3

Keep a searchable history of generations in IndexedDB with diff view

USE CASE 4

Work on multiple prompts in parallel using workspace tabs

What is it built with?

GoReactTypeScriptWailsKonva

How does it compare?

rosekhlifa/image-studioalexvilelabah/bah-browserjoshuakgoldberg/eslint-plugin-erasable-syntax-only
Stars505151
LanguageTypeScriptTypeScriptTypeScript
Last pushed2026-07-01
MaintenanceActive
Setup difficultyeasyeasyeasy
Complexity3/52/52/5
Audiencedevelopervibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Wails v2 does not cross-compile, so each OS must be built on its own machine.

MIT license, free for any use including commercial, just keep the copyright notice.

In plain English

Image Studio is a desktop image generation and editing client written in Go and React, packaged with Wails. It exists to solve one real-world annoyance for people using OpenAI-compatible relay services that sit behind Cloudflare. Models like image-2 and gpt-image often need 30 to 120 seconds to produce a result, but Cloudflare's default 100-second gateway timeout cuts the connection, and the client receives a 524 or 504 error instead of an image. The author's fix is to call the upstream /v1/responses endpoint and consume it as a Server-Sent Events stream. The model emits progress events like response.in_progress and partial_image while it works, which keeps the TCP connection visibly active so Cloudflare stops treating it as idle. The app also retries up to three times with a 15-second backoff and falls back to the last partial_image_b64 if the final result never arrives. For relays that do not support the Responses API, a second mode uses the standard /v1/images/generations and /v1/images/edits endpoints with normal one-shot JSON. The app itself is a full image editor. There is a Konva canvas with zoom, pan, and a fit toggle, plus brush-and-eraser masking, four annotation tools (rectangle, arrow, freehand, text), and Go-side image processing for rotate, flip, and crop that edits in place without spawning extra history entries. A history sidebar stores past generations in IndexedDB, with search, filters, and a Shift-click diff view. Multiple workspace tabs run in parallel, each with its own prompt, parameters, and current image. A first-launch wizard collects five fields: API form (Responses or Images), upstream BASE_URL, API key, optional text model ID, and image model ID. The README is clear that the app ships with no default upstream and no telemetry. API keys, history, and generated images all stay on the user's machine. There is a Test Connection button, a toggle to disable the model's default prompt rewriting, and an output format setting for PNG, JPEG, or WebP. Installation is by prebuilt binary from the Releases page (Windows x64, macOS universal, Linux x64), or by building from source with Go 1.25+, Node 20+, and the Wails v2 CLI. Wails v2 does not cross-compile, so each platform builds on its own. The project is MIT licensed.

Copy-paste prompts

Prompt 1
Set up Image Studio against a Cloudflare-fronted OpenAI relay using the Responses API and walk me through the wizard
Prompt 2
Show me the Go code that streams /v1/responses as SSE and falls back to the last partial_image_b64
Prompt 3
Add a new annotation tool to the Konva canvas, like a blur brush, with Go-side processing
Prompt 4
Build Image Studio from source on Linux with Go 1.25 and the Wails v2 CLI
Prompt 5
Add WebSocket support as a third API mode alongside Responses and Images endpoints

Frequently asked questions

What is image-studio?

Wails desktop client for OpenAI-compatible image models that streams the Responses API to dodge Cloudflare 100-second timeouts, with a Konva editor and local IndexedDB history.

What language is image-studio written in?

Mainly TypeScript. The stack also includes Go, React, TypeScript.

What license does image-studio use?

MIT license, free for any use including commercial, just keep the copyright notice.

How hard is image-studio to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is image-studio for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.