AI Visual Prompt Cookbook: one style.json per look, and two different counts of how many there are
118+ plug-and-play JSON style packs for Nano Banana Pro, GPT Image & Midjourney. Copy one JSON, get a style. Updated daily.
At a glance
- What is it?
- A library of JSON style systems you paste into a chat model to get a repeatable visual direction. The repository description claims 118+ style packs while the gallery line says 158, the cadence is described as daily while the recent releases land every three to six days, and the walkthrough's final step has no result in it.
- Who is it for?
- The idea is sound for people who keep retyping the same art direction: a variable block plus a template plus a filled example is easier to reuse than a paragraph of prose, and the styles are structured enough to diff. Adopt it with two expectations set.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 11, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The repository says 118+ styles, the gallery line says 158
Two numbers describe the same library, and they do not match. The repository description opens with 118+ plug-and-play JSON style packs for Nano Banana Pro, GPT Image and Midjourney, copy one JSON, get a style, updated daily. The Featured Styles section, further down the same document, tells you that every style ships as one JSON plus two preview images and that the complete set is 158 in the All Styles gallery. Both figures sit in the project's own text with no reconciliation between them, and neither is a count you can audit from the repository root without walking styles/ directory by directory. The lower number may simply be stale, since the description is the part of a repository that tools read first and nobody edits on a schedule. Either way, the number a visitor quotes most often comes from the field nobody updates per drop.
Updated daily against releases spaced three and six days apart
The cadence claim and the release history do not line up either. The description says the library is updated daily. The three most recent releases are dated drops rather than versions with numbers: v2026.09.29 named 2026.09.29 Style Drop, v2026.09.26, and v2026.09.23. That is a gap of three days and then six. The last push to the repository, dated 2026-09-29, coincides with the newest tag, so the tags do track the work as it lands. What they show is a rhythm of a few drops a week rather than daily additions. For a user the difference matters in one specific way: if you follow the project by watching releases, you are checking a few times a week, not every day, and a style you asked for in an issue may sit in the queue for that interval.
The repository root is also the published site, verification file included
The top-level listing is a website as much as a code collection: .nojekyll, CNAME, index.html, robots.txt, sitemap.xml, llms.txt and a site/ directory sit beside styles/, docs/, schemas/, assets/ and scripts/, along with a file named googlea27729fcdb7095a0.html. The verification file and the CNAME record are hosting artefacts that have been committed to the same tree as the content, and llms.txt is there for machine readers while robots.txt is there for crawlers. Three addresses are in circulation for the gallery as a result: the link in the README points at https://prompts.vigocreativeai.com/site/, while the homepage recorded for the repository is https://vigozhao.github.io/AI-Visual-Prompt-Cookbook/site/, with the site/ path segment preserved. Whether the custom domain serves the gallery at its root is not stated anywhere in the visible text.
Two ways to fill a style in, and a third artifact that is not the style
The quick start gives two editing points and they are not equivalent. You can provide values for the variables declared in `environment_variables`, or you can edit a case in `examples[*].values`, which is the path for altering one bundled example rather than the default. Both live inside the same file, so the distinction between a global default and a single case has to be inferred from the JSON key names rather than from any schema documentation, even though a schemas/ directory sits at the repository root. A third route exists for people who want to skip the file: a Copy Prompt Library under docs/copy-prompts holds a copy-ready prompt per style, and the text is explicit that the full reusable style systems still live in each style.json. So the short path and the real artifact are maintained separately, and nothing states what happens when one is updated and the other is not.
Ten variables are declared, and the visible template consumes fewer than that
The walkthrough fills in ten values, reproduced exactly as the document shows them:
SUBJECT = a tired architect with silver hair
SUBJECT_ACTION = studying a folded blueprint in a late-night pause
PRODUCT_OR_PROP = a rolled plan tube and a pencil held low
LOCATION = a dim concrete studio after midnight
BACKGROUND_ELEMENTS = soft charcoal wall gradient, blurred drafting table edge, deep empty space
MAIN_TEXT = focus / outlasts / noise.
SECONDARY_TEXT = studio log 02:14
ACCENT_SYMBOL = a tiny white plus
WARDROBE_STYLE = dark work jacket over a plain black shirt
ASPECT_RATIO = 16:9The visible part of the prompt template behind those values names nine placeholders: ASPECT_RATIO, STYLE_FIDELITY_ANCHORS, SOURCE_CONTENT_TO_AVOID, SUBJECT, SUBJECT_ACTION, PRODUCT_OR_PROP, LOCATION, BACKGROUND_ELEMENTS and WARDROBE_STYLE. Three of the ten values you are asked to fill in, MAIN_TEXT, SECONDARY_TEXT and ACCENT_SYMBOL, are the typography layer, and they appear nowhere in the excerpt that is shown. The excerpt itself also stops in the middle of a word, at make a landscape poste, so the remaining placeholders are simply not on the page.
Step 4 is titled The Result and contains nothing, and the finished prompt stops mid-sentence
The walkthrough is organised as four steps, and the fourth has no content under its heading. The finished prompt given in step 3 ends on an unfinished line:
Create a 16:9 monochrome editorial poster in the Mono Noir Type Portrait Poster Style. Style fidelity lock: black-and-white photographic portrait, deep charcoal background, giant lowercase left-aligned headline, first word in a white label, remaining words in white, high contrast, sparse negative space, close crop. Source content to avoid: no young woman with blunt bangs, no freckles close-up, no discipline beats procrastination text, no copied face or exact source crop. Scene: a tired architect with silver hair studying a folded blueprint in a late-night pause with a rolled plan tubeSo the demonstration never shows the filled typography values in the output, and never shows the image it was supposed to produce. The two text elements and the accent symbol you supplied are the parts a poster style lives or dies by, and they are exactly the parts the visible output leaves out. Anyone using this walkthrough as a template should read it as an illustration of the variable shape rather than as a complete worked example.
Midjourney is named in the description and absent from the model recommendations
The repository description names three destinations: Nano Banana Pro, GPT Image and Midjourney. The recommended model section names two: ChatGPT Images 2 from OpenAI, with the model identifier gpt-image-2, praised for text rendering, 2K and 4K output and reasoning before generation, and Nano Banana Pro from Google, identified as Gemini 3 Pro Image, praised for 4K output, multilingual text accuracy and subject consistency. The stated requirement for both is the same: an end-to-end multimodal model that can read long structured JSON prompts and generate the image in one step. Other multimodal models that accept long JSON prompts are said to work but are not the primary recommendation. Midjourney appears in neither list, and no note explains whether it can read a long JSON prompt at all, which makes the third name in the description unsupported by the rest of the text.
One JSON plus two preview images per style, and a provenance field inside the template
The unit of the library is stated plainly: one JSON plus two preview images per style, which at the gallery's own count of 158 means 158 JSON files and 316 preview images living in the repository. The primary language of the repository is recorded as Python, yet nothing at the root declares a Python environment: there is no pyproject.toml, no requirements.txt and no test configuration among the top-level entries, only a scripts/ directory. So whatever those scripts need to regenerate the site, the styles index or the catalog, their dependencies are not pinned anywhere visible. Adding to that, the document discloses its own construction: the library is curated by @VigoCreativeAI and structured with assistance from OpenAI Codex, and the styles are described as distilled from visual design references. One template field deserves a close read, because it encodes a provenance policy rather than a style choice. The sample value shown for SOURCE_CONTENT_TO_AVOID reads: no young woman with blunt bangs, no freckles close-up, no discipline beats procrastination text, no copied face or exact source crop. The first three entries name specific attributes of the reference image, and the last two state the rule outright, no copied face and no exact source crop. So the template tells the model to reproduce a look while refusing to reproduce the particular person, crop or text the look was read from. The field exists per style and its contents will differ from one to the next, which makes it worth reading in any style you adopt.
Editorial conclusion
The idea is sound for people who keep retyping the same art direction: a variable block plus a template plus a filled example is easier to reuse than a paragraph of prose, and the styles are structured enough to diff. Adopt it with two expectations set. It is copy and paste, not a tool: there is no install step, no schema validation in your editor, and no code path between you and the model, so mistakes in a variable name surface as model confusion rather than an error. And pick your source of truth before you start, since the count of styles is stated twice in the project's own text, 118+ in the repository description and 158 in the gallery, and the update cadence is claimed daily while the tags show gaps of three and six days. For provenance, read the `Source content to avoid` field before reusing a style, because those templates carry explicit instructions about what came from the reference image and what must not be copied from it.
Frequently asked questions
What does a single style in the AI Visual Prompt Cookbook contain?
One style.json shipped with two preview images. The JSON carries a prompt template, variables declared under environment_variables, and an examples array whose values you can edit instead of the defaults.
How many styles are in the AI Visual Prompt Cookbook?
The project's own text gives two figures. The repository description says 118+ plug-and-play JSON style packs, while the gallery line in the README says the complete set is 158.
Which image models is the AI Visual Prompt Cookbook workflow meant for?
End-to-end multimodal models that read long structured JSON prompts and generate the image in one step: ChatGPT Images 2 with the identifier gpt-image-2, and Nano Banana Pro, which is Gemini 3 Pro Image. Other models may work but are not the primary recommendation.
Do I have to install anything to use an AI Visual Prompt Cookbook style?
No install step is given. Open a style folder, copy the style.json, paste the whole JSON into ChatGPT, Claude, Nano Banana Pro or another LLM image workflow, replace the variables, then send the resulting prompt to your image model.
How often does the AI Visual Prompt Cookbook add new styles?
The project description claims daily updates. The recent releases are date-stamped drops, v2026.09.29, v2026.09.26 and v2026.09.23, and the last push to the repository is dated 2026-09-29.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/vigozhao-ai-visual-prompt-cookbook)