DEV Community

patricio molina
patricio molina

Posted on

I built a free, open-source Midjourney prompt builder that thinks like a photographer

I'm a graphic designer. Over the last couple of years, generative image engines went from a toy to a real part of how I work — fast, flexible, genuinely high quality. But there's a catch nobody likes to say out loud: getting professional, repeatable results out of Midjourney is hard. The prompt structure is deceptively complex, and most of the "tips" online are folklore.

Like a lot of people, I started asking an LLM to write my prompts. It works — but you lose two things: variation (one answer instead of a space to explore) and intent (sometimes you don't know what you want yet — you want to try). So I built the tool I actually wanted: Prompt Atelier, a free, open-source, layered prompt builder for Midjourney.

Magic words don't make good images. Method does.

The biggest lie in AI image prompting is that quality comes from stacking adjectives: 8k, ultra hd, masterpiece. It doesn't. After enough renders you notice what photographers already know:

  • Light is everything. "Golden hour, low sun, soft mist" does more for realism than any resolution buzzword.
  • Structure beats length. framing → subject → scene layers → light → camera → render reads better than a 60-word soup.
  • The camera sells the photo. A body, a focal length, an aperture ("Sony A7R IV, 16–35mm, f/11") signals photograph, not illustration.

Prompt Atelier bakes that method into the interface.

How it works

You build the prompt in layers, each with curated one-click modifiers: framing, subject, scene layers (foreground → background, because depth reads as realism), light & atmosphere (highlighted on purpose — it's the #1 lever), camera/lens/film, and render. Pick your model and parameters (--ar, --style raw, --s, --c, --seed, --sref…) and a clean, copy-ready prompt assembles in real time.

The part I'm proudest of: a "Prompt Doctor"

Most tools let you write a bad prompt in peace. Prompt Atelier has a built-in linter that flags the mistakes that quietly waste renders, live as you type:

  • No light defined — the most common and most costly mistake.
  • ⚠️ Missing --style raw on a photo prompt.
  • ⚠️ Over ~40 words — Midjourney starts losing focus.
  • ⚠️ Stacked "magic words" that add nothing.
  • ⚠️ Illustration vocabulary in a photo prompt.

It's the difference between a text box and a tool that teaches you as you use it.

Built to be pleasant

I'm a designer, so I couldn't ship something ugly. It's a calm "golden hour studio" interface — because the tools we enjoy are the tools we actually use. No sign-up, no tracking, no backend: it runs entirely in your browser, and your prompts never leave the page.

Tech, briefly

React 19 + TypeScript (strict), Vite, Tailwind CSS v4, zero UI-kit dependencies. Static deploy, MIT-licensed.

Try it / break it / improve it

This is v1 with Midjourney support, and I use it on my own real projects. Next: shareable prompt links, a Niji mode, more recipes.

If you make images with Midjourney, I'd love your feedback — PRs welcome.

Top comments (0)