Skip to content

Commit e07fd31

Browse files
feat: add market-stall as a fifth showcase piece
Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 42b562d commit e07fd31

13 files changed

Lines changed: 2001 additions & 7 deletions

File tree

‎.cursor-plugin/plugin.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@
141141
"showcase/shipping-crate",
142142
"showcase/stone-well",
143143
"showcase/wooden-barrel",
144-
"showcase/campfire"
144+
"showcase/campfire",
145+
"showcase/market-stall"
145146
]
146147
}

‎AGENTS.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ classifies it as a `cursor-plugin`. This is content the AI loads when the user
2121
asks Blender questions or works on Blender add-ons in Cursor or Claude Code.
2222

2323
The content base is 16 skills, 9 rules, 3 templates, 27 snippets, 59
24-
examples, and 4 showcase pieces (counts are CI-enforced against README.md
24+
examples, and 5 showcase pieces (counts are CI-enforced against README.md
2525
and the manifest). The full inventory tables and per-item purposes live in
2626
`CLAUDE.md`. Example anatomy and authoring rules: copy `examples/bmesh-gear/`;
2727
showcase conventions: `showcase/README.md`. The render look is specified

‎CLAUDE.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ rules/<rule-name>.mdc - Anti-pattern rules, 9 total
2222
templates/<template-name>/ - Starter projects, 3 total
2323
snippets/<snippet-name>.py - Standalone code patterns, 27 total
2424
examples/<name>/ - Runnable smoke-gated examples, 59 total (+ gallery.json)
25-
showcase/<name>/ - Budget-conformance props, 4 pieces (sibling of examples/; see showcase/README.md)
25+
showcase/<name>/ - Budget-conformance props, 5 pieces (sibling of examples/; see showcase/README.md)
2626
scripts/build_gallery.py - Regenerates docs/gallery/ from examples/gallery.json + showcase/gallery.json
2727
scripts/site/ - Vendored landing-page build (Jinja2)
2828
docs/gallery/ - Committed generated gallery pages + hero renders

‎README.md‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
</p>
1919

2020
<p align="center">
21-
<strong>16 skills</strong> &nbsp;&bull;&nbsp; <strong>9 rules</strong> &nbsp;&bull;&nbsp; <strong>3 templates</strong> &nbsp;&bull;&nbsp; <strong>27 snippets</strong> &nbsp;&bull;&nbsp; <strong>59 examples</strong> &nbsp;&bull;&nbsp; <strong>4 showcase pieces</strong>
21+
<strong>16 skills</strong> &nbsp;&bull;&nbsp; <strong>9 rules</strong> &nbsp;&bull;&nbsp; <strong>3 templates</strong> &nbsp;&bull;&nbsp; <strong>27 snippets</strong> &nbsp;&bull;&nbsp; <strong>59 examples</strong> &nbsp;&bull;&nbsp; <strong>5 showcase pieces</strong>
2222
</p>
2323

2424
<p align="center">
@@ -37,7 +37,7 @@
3737

3838
## Overview
3939

40-
This repository ships **16 skills, 9 rules, 3 templates, 27 snippets, 59 examples, and 4 showcase pieces** for Blender Python development targeting Blender 5.2 LTS (current stable) with Blender 4.5 LTS fallback support. Blender 5.1 is prior stable.
40+
This repository ships **16 skills, 9 rules, 3 templates, 27 snippets, 59 examples, and 5 showcase pieces** for Blender Python development targeting Blender 5.2 LTS (current stable) with Blender 4.5 LTS fallback support. Blender 5.1 is prior stable.
4141

4242
The content is consumed by AI coding agents (Cursor, Claude Code, any MCP-capable client) when working on Blender add-ons, geometry nodes scripts, batch pipelines, or animation tooling. There is no build step. Edit the markdown and Python files directly.
4343

@@ -79,6 +79,7 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
7979
<a href="showcase/stone-well/"><img src="showcase/stone-well/preview.webp" alt="Stone well: a round brick well with a shingled pyramid roof on posts, rope and bucket, on a dark studio floor" /></a>
8080
<a href="showcase/wooden-barrel/"><img src="showcase/wooden-barrel/preview.webp" alt="Wooden barrel: a staved barrel with iron hoops on a dark studio floor, warm wedge on the back wall" /></a>
8181
<a href="showcase/campfire/"><img src="showcase/campfire/preview.webp" alt="Campfire: a stone ring, crossed logs, and ash mound on a dark studio floor, warm wedge on the back wall" /></a>
82+
<a href="showcase/market-stall/"><img src="showcase/market-stall/preview.webp" alt="Market stall: a timber frame with a striped awning and counter on a dark studio floor, warm wedge on the back wall" /></a>
8283

8384
[`shipping-crate`](showcase/shipping-crate/) — procedural crate through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets. Falsifier `--skip-decimate` exits 9.
8485

@@ -88,6 +89,8 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
8889

8990
[`campfire`](showcase/campfire/) — procedural cobble ring, logs, and ash through the same pipeline. Falsifier `--skip-decimate` exits 9.
9091

92+
[`market-stall`](showcase/market-stall/) — procedural timber stall with striped awning and counter through the same pipeline. Falsifier `--skip-decimate` exits 9.
93+
9194
## Examples
9295

9396
Runnable, smoke-gated demos live in [`examples/`](examples/) — each is executed headless on

‎ROADMAP.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@ Not committed; target list for the next content version. (v0.3.0 shipped the smo
110110
- ~~Round stone well showcase~~ **SHIPPED** as `showcase/stone-well/` — running-bond brick well, shingled pyramid roof, windlass/rope/bucket; `--skip-decimate` exits 9 on the LOD1 ratio band
111111
- ~~Wooden barrel showcase~~ **SHIPPED** as `showcase/wooden-barrel/` — bulged staves, four iron hoops, lid heads; `--skip-decimate` exits 9 on the LOD1 ratio band
112112
- ~~Campfire showcase~~ **SHIPPED** as `showcase/campfire/` — cobble ring, ash mound, crossed logs; `--skip-decimate` exits 9 on the LOD1 ratio band
113+
- ~~Market stall showcase~~ **SHIPPED** as `showcase/market-stall/` — timber frame, striped awning, counter; `--skip-decimate` exits 9 on the LOD1 ratio band
113114
- Procedural terrain or landscape showcase using Geometry Nodes scatter
114115
- Hero prop with a more complex silhouette (lantern or treasure chest) as a second showcase piece
115116
- Small modular kit showcase on recognizable geometry (`modular-kit-snap` contract)
28.5 KB
Loading

‎docs/gallery/index.html‎

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@ <h1>Examples Gallery</h1>
272272
autocomplete="off" spellcheck="false" aria-label="Search examples" />
273273
<button class="q-clear" id="qClear" type="button" aria-label="Clear search" hidden>&times;</button>
274274
</div>
275-
<span class="count" id="count" role="status" aria-live="polite">55 examples</span>
275+
<span class="count" id="count" role="status" aria-live="polite">56 examples</span>
276276
<div class="density" role="group" aria-label="Card density">
277277
<button class="density-btn" data-density="compact" type="button" aria-pressed="false">Compact</button>
278278
<button class="density-btn" data-density="detailed" type="button" aria-pressed="false">Detailed</button>
@@ -929,6 +929,17 @@ <h2><a href="campfire/">campfire</a></h2>
929929
<a class="card-link" href="campfire/">View example <span aria-hidden="true">&rarr;</span></a>
930930
</div>
931931
</article>
932+
<article class="card" data-tags="mesh export showcase">
933+
<a class="card-media" href="market-stall/" aria-label="market-stall example detail page">
934+
<img src="assets/market-stall-hero.webp" alt="market-stall — A procedural timber market stall through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets rather than an API contract." loading="lazy" decoding="async" />
935+
</a>
936+
<div class="card-body">
937+
<h2><a href="market-stall/">market-stall</a></h2>
938+
<p class="teaches">A procedural timber market stall through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets rather than an API contract.</p>
939+
<p class="witnesses"><span class="tag">witnesses</span> Recomputed: 2244 tris, three materials with 48 faces per awning stripe slot, UVs in 0..1 with zero AABB overlap, outer AABB 1.360×0.964×1.743 m, LOD ratios in band, convex collider 28 tris, non-empty glTF. --skip-decimate exits 9 on the LOD1 ratio budget.</p>
940+
<a class="card-link" href="market-stall/">View example <span aria-hidden="true">&rarr;</span></a>
941+
</div>
942+
</article>
932943
</div>
933944
<p class="noresults" id="noResults" hidden>No examples match the current filters.
934945
<button class="chip" id="resetFilters" type="button">Clear search and tags</button></p>

0 commit comments

Comments
 (0)