<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz" -->

---
title: The complete guide to AI image generation | daily.dev
description: This guide walks through choosing and using AI image generation tools, from chat apps to local models, using a fictional bicycle shop illustration as a running...
canonical: https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: The complete guide to AI image generation | daily.dev
og:description: This guide walks through choosing and using AI image generation tools, from chat apps to local models, using a fictional bicycle shop illustration as a running...
og:url: https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz
og:image: https://api.daily.dev/og/posts/Ggx64FFvz.png
og:image:alt: The complete guide to AI image generation
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# The complete guide to AI image generation

**[Flavio Copes](https://daily.dev/sources/flaviocopes)** · 46 min read · 0 upvotes · 0 comments

## Summary

This guide walks through choosing and using AI image generation tools, from chat apps to local models, using a fictional bicycle shop illustration as a running example. It distinguishes models, products, and providers, and explains diffusion, latent space, and flow matching at a conceptual level. It covers hosted options like GPT Image, Nano Banana, and FLUX, creative tools like Midjourney and Adobe Firefly, and local runners like Draw Things, MFLUX, and ComfyUI. It includes Node.js scripts for generating and editing images via the OpenAI and Gemini APIs, plus a terminal command for Z-Image Turbo through MFLUX with specific flags like --steps 9 and -q 8 for 8-bit quantization.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://flaviocopes.com/image-generation>

## Questions this post answers

### What's the difference between the gpt-image-2.5-flare and gpt-image-2.5-sunburst models in OpenAI's Image API?

Sunburst is positioned for editing precision while Flare is meant for everyday generation, according to OpenAI's image generation guide. In practice, generation requests use a model id like 'gpt-image-2.5-flare', while image edit requests through the edits endpoint use 'gpt-image-2.5-sunburst', each accessed via the Images API with options like size, quality, and output format.

_Developers picking an OpenAI image model for a feature can track API changes like this on daily.dev._

### How do I run Z-Image Turbo locally on a Mac using MFLUX?

Install MFLUX as a tool with uv via 'uv tool install --upgrade mflux', then run 'mflux-generate-z-image-turbo' with flags such as --prompt, --width, --height, --seed, --steps, and -q for quantization, for example '-q 8' for 8-bit quantization. The first run downloads model files, and Z-Image Turbo is a compact distilled model intended to use its own recommended step count rather than values copied from other models.

_Anyone setting up local image generation on a Mac can follow workflows like this via daily.dev._

### Why do FLUX.2 Klein 4B and FLUX 3 Image Klein have different licenses even though they're both FLUX models?

FLUX.2 Klein 4B is released under the Apache 2.0 license while FLUX 3 Image Klein uses the FLUX Kommunity License, because different FLUX variants carry different licensing and resource requirements despite sharing the FLUX family name. Checking the specific model card rather than assuming shared terms across a model family is necessary before local or commercial use.

_Developers evaluating open-weight FLUX variants for a project can compare licensing details on daily.dev._

## Similar posts on daily.dev

- [A practical guide to AI image generation, from diffusion to agents](https://daily.dev/posts/a-practical-guide-to-ai-image-generation-from-diffusion-to-agents-pkfzporzm) · Hacker News · 0 upvotes · 0 comments
- [Stop Paying for AI Images: 4 Free Tools Every Professional Should Know in 2026](https://daily.dev/posts/stop-paying-for-ai-images-4-free-tools-every-professional-should-know-in-2026-m741n4xcr) · Medium · 0 upvotes · 0 comments
- [Nano Banana 2 Tutorial: AI Images for Web Developers](https://daily.dev/posts/nano-banana-2-tutorial-ai-images-for-web-developers-wxhrp6yxa) · SitePoint · 0 upvotes · 0 comments

---

Tags: [#ai-image-generation](https://daily.dev/tags/ai-image-generation), [#comfyui](https://daily.dev/tags/comfyui), [#diffusion-models](https://daily.dev/tags/diffusion-models), [#flux](https://daily.dev/tags/flux), [#javascript](https://daily.dev/tags/javascript)

[View this post on daily.dev](https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"The complete guide to AI image generation","url":"https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz"},"datePublished":"2026-10-28T11:03:21.771Z","dateModified":"2026-10-29T02:14:50.837Z","description":"This guide walks through choosing and using AI image generation tools, from chat apps to local models, using a fictional bicycle shop illustration as a running...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d68344c23ce5652199ef09b5688be86c?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d68344c23ce5652199ef09b5688be86c?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Flavio Copes","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Flavio Copes","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/1f2dbd275797411bbd37bfdaaf0951a9","url":"https://daily.dev/sources/flaviocopes"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"ai-image-generation,comfyui,diffusion-models,flux,javascript","timeRequired":"PT46M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Flavio Copes","item":"https://daily.dev/sources/flaviocopes"},{"@type":"ListItem","position":3,"name":"The complete guide to AI image generation"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/the-complete-guide-to-ai-image-generation-ggx64ffvz#faq","mainEntity":[{"@type":"Question","name":"What's the difference between the gpt-image-2.5-flare and gpt-image-2.5-sunburst models in OpenAI's Image API?","acceptedAnswer":{"@type":"Answer","text":"Sunburst is positioned for editing precision while Flare is meant for everyday generation, according to OpenAI's image generation guide. In practice, generation requests use a model id like 'gpt-image-2.5-flare', while image edit requests through the edits endpoint use 'gpt-image-2.5-sunburst', each accessed via the Images API with options like size, quality, and output format. Developers picking an OpenAI image model for a feature can track API changes like this on daily.dev."}},{"@type":"Question","name":"How do I run Z-Image Turbo locally on a Mac using MFLUX?","acceptedAnswer":{"@type":"Answer","text":"Install MFLUX as a tool with uv via 'uv tool install --upgrade mflux', then run 'mflux-generate-z-image-turbo' with flags such as --prompt, --width, --height, --seed, --steps, and -q for quantization, for example '-q 8' for 8-bit quantization. The first run downloads model files, and Z-Image Turbo is a compact distilled model intended to use its own recommended step count rather than values copied from other models. Anyone setting up local image generation on a Mac can follow workflows like this via daily.dev."}},{"@type":"Question","name":"Why do FLUX.2 Klein 4B and FLUX 3 Image Klein have different licenses even though they're both FLUX models?","acceptedAnswer":{"@type":"Answer","text":"FLUX.2 Klein 4B is released under the Apache 2.0 license while FLUX 3 Image Klein uses the FLUX Kommunity License, because different FLUX variants carry different licensing and resource requirements despite sharing the FLUX family name. Checking the specific model card rather than assuming shared terms across a model family is necessary before local or commercial use. Developers evaluating open-weight FLUX variants for a project can compare licensing details on daily.dev."}}]}
```

