Skip to content

Commit 304f763

Browse files
committed
feat: generate metaobjects.dev/reference/ at deploy time + refresh versions
deploy.yml now clones the public wizardsofodd reference impl, runs `meta docs --site --prompts data/templates` (published @metaobjectsdev/cli), and publishes the browsable docs under /reference/ — regenerated on every deploy, no cross-repo secrets. Adds a "Reference docs" nav link; gitignores the deploy-time-generated www/reference/. Also refreshes the per-port version badges + llms indexes (site was stale at 0.20.1): npm 0.20.3, Maven 7.11.4, NuGet 0.19.4, PyPI 0.19.6, 253 fixtures. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xy8powhHYJ6gfFt9Ut8dL
1 parent 30e947d commit 304f763

5 files changed

Lines changed: 51 additions & 27 deletions

File tree

.github/workflows/deploy.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,27 @@ jobs:
2424
- name: Checkout
2525
uses: actions/checkout@v4
2626

27+
- name: Setup Node
28+
uses: actions/setup-node@v4
29+
with:
30+
node-version: 22
31+
32+
# Deploy-time reference-doc generation: clone the public wizardsofodd
33+
# reference impl, run `meta docs` (published @metaobjectsdev/cli), and drop the
34+
# browsable site into www/reference/ so it publishes with the site. Regenerates
35+
# on every deploy (push to main / workflow_dispatch) — no cross-repo secrets.
36+
# --ignore-scripts skips wizardsofodd's wrangler postinstall (not needed for
37+
# docs). --prompts data/templates surfaces the actual prompt TEXT.
38+
- name: Generate wizardsofodd reference docs
39+
run: |
40+
git clone --depth 1 https://github.com/Draagon/wizardsofodd.git /tmp/woo
41+
cd /tmp/woo
42+
npm ci --ignore-scripts
43+
npx meta docs . --site --prompts data/templates --out /tmp/woo-docs
44+
rm -rf "$GITHUB_WORKSPACE/www/reference"
45+
mkdir -p "$GITHUB_WORKSPACE/www/reference"
46+
cp -r /tmp/woo-docs/site/* "$GITHUB_WORKSPACE/www/reference/"
47+
2748
- name: Setup Pages
2849
uses: actions/configure-pages@v4
2950

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Generated at deploy time by deploy.yml (meta docs from wizardsofodd)
2+
www/reference/

www/index.html

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
<a href="/getting-started.html" class="nav-link">Get started</a>
3333
<a href="/story.html" class="nav-link">Story</a>
3434
<a href="/videos.html" class="nav-link">Videos</a>
35+
<a href="/reference/" class="nav-link">Reference docs</a>
3536
<a href="https://github.com/metaobjectsdev/metaobjects" class="nav-link">GitHub</a>
3637
<a href="#ai" class="nav-link">For AI</a>
3738
<a href="https://github.com/metaobjectsdev/metaobjects/tree/main/spec" class="nav-link nav-cta">Spec</a>
@@ -197,33 +198,33 @@ <h2 class="section-label">Five ports. All installable today.</h2>
197198
<tbody>
198199
<tr>
199200
<td><strong>TypeScript</strong></td>
200-
<td><span class="status status-stable">npm 0.20.1 · reference</span></td>
201-
<td>npm <code>@metaobjectsdev/*@0.20.1</code> (the reference implementation). Drizzle + Zod + Fastify + Hono codegen, Kysely runtime, and <code>meta migrate</code> for Postgres / SQLite / Cloudflare D1 — the TS toolchain owns schema migrations. 2,500+ tests across the workspace.</td>
201+
<td><span class="status status-stable">npm 0.20.3 · reference</span></td>
202+
<td>npm <code>@metaobjectsdev/*@0.20.3</code> (the reference implementation). Drizzle + Zod + Fastify + Hono codegen, Kysely runtime, and <code>meta migrate</code> for Postgres / SQLite / Cloudflare D1 — the TS toolchain owns schema migrations. 2,500+ tests across the workspace.</td>
202203
</tr>
203204
<tr>
204205
<td><strong>Java</strong></td>
205-
<td><span class="status status-stable">Maven Central 7.11.3</span></td>
206-
<td><code>com.metaobjects:metaobjects-*:7.11.3</code> on Maven Central. Spring REST + DTO + Repository + filter-allowlist codegen via <code>codegen-spring</code>; OMDB runtime persistence (CRUD / query / typed jsonb / Spring-tx); render + payload + verify + output-parser codegen.</td>
206+
<td><span class="status status-stable">Maven Central 7.11.4</span></td>
207+
<td><code>com.metaobjects:metaobjects-*:7.11.4</code> on Maven Central. Spring REST + DTO + Repository + filter-allowlist codegen via <code>codegen-spring</code>; OMDB runtime persistence (CRUD / query / typed jsonb / Spring-tx); render + payload + verify + output-parser codegen.</td>
207208
</tr>
208209
<tr>
209210
<td><strong>Kotlin</strong></td>
210-
<td><span class="status status-stable">Maven Central 7.11.3</span></td>
211-
<td><code>com.metaobjects:metaobjects-codegen-kotlin:7.11.3</code> + <code>metadata-ktx</code> Kotlin facade. KotlinPoet codegen: Exposed Tables, Spring controllers, payload VOs, output parsers, stored-proc helpers. Persistence-conformance against Testcontainers Postgres.</td>
211+
<td><span class="status status-stable">Maven Central 7.11.4</span></td>
212+
<td><code>com.metaobjects:metaobjects-codegen-kotlin:7.11.4</code> + <code>metadata-ktx</code> Kotlin facade. KotlinPoet codegen: Exposed Tables, Spring controllers, payload VOs, output parsers, stored-proc helpers. Persistence-conformance against Testcontainers Postgres.</td>
212213
</tr>
213214
<tr>
214215
<td><strong>C#.NET</strong></td>
215-
<td><span class="status status-stable">NuGet 0.19.3</span></td>
216-
<td>NuGet <code>MetaObjects</code> / <code>MetaObjects.Render</code> / <code>MetaObjects.Codegen</code> + the <code>dotnet meta</code> tool (<code>MetaObjects.Cli</code>), all <code>0.19.3</code>. EF Core entities + <code>AppDbContext</code> + ASP.NET minimal-API routes codegen; render engine + payload-VO codegen + <code>verify</code>. (Schema migrations are TS-owned.)</td>
216+
<td><span class="status status-stable">NuGet 0.19.4</span></td>
217+
<td>NuGet <code>MetaObjects</code> / <code>MetaObjects.Render</code> / <code>MetaObjects.Codegen</code> + the <code>dotnet meta</code> tool (<code>MetaObjects.Cli</code>), all <code>0.19.4</code>. EF Core entities + <code>AppDbContext</code> + ASP.NET minimal-API routes codegen; render engine + payload-VO codegen + <code>verify</code>. (Schema migrations are TS-owned.)</td>
217218
</tr>
218219
<tr>
219220
<td><strong>Python</strong></td>
220-
<td><span class="status status-stable">PyPI 0.19.5</span></td>
221-
<td>PyPI <code>metaobjects</code> <code>0.19.5</code> + the <code>metaobjects</code> CLI. Loader + canonical serializer + render + verify + codegen (Pydantic + FastAPI) + ObjectManager runtime. All five cross-port conformance corpora green.</td>
221+
<td><span class="status status-stable">PyPI 0.19.6</span></td>
222+
<td>PyPI <code>metaobjects</code> <code>0.19.6</code> + the <code>metaobjects</code> CLI. Loader + canonical serializer + render + verify + codegen (Pydantic + FastAPI) + ObjectManager runtime. All five cross-port conformance corpora green.</td>
222223
</tr>
223224
</tbody>
224225
</table>
225226
<p class="impl-note">
226-
Nineteen shared conformance corpora at <a href="https://github.com/metaobjectsdev/metaobjects/tree/main/fixtures"><code>fixtures/</code></a> — metamodel (249 fixtures), render, verify, extract, persistence (24 query scenarios against Testcontainers Postgres), API contract (cross-port, reference <em>and</em> generated lanes), YAML and more — validate every implementation against the same expectations.
227+
Nineteen shared conformance corpora at <a href="https://github.com/metaobjectsdev/metaobjects/tree/main/fixtures"><code>fixtures/</code></a> — metamodel (253 fixtures), render, verify, extract, persistence (24 query scenarios against Testcontainers Postgres), API contract (cross-port, reference <em>and</em> generated lanes), YAML and more — validate every implementation against the same expectations.
227228
</p>
228229
</section>
229230

www/llms-full.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MetaObjects -- Full Reference Corpus
22

3-
> A cross-language metadata standard for declaring typed entity models that drive code generation, runtime metadata access, drift detection, and prompt construction across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `0.20.1` on npm and `7.11.3` on Maven Central.
3+
> A cross-language metadata standard for declaring typed entity models that drive code generation, runtime metadata access, drift detection, and prompt construction across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `0.20.3` on npm and `7.11.4` on Maven Central.
44

55
**Note for AI assistants:** This file is the concatenated reference material for MetaObjects, intended to be loaded as LLM context. For the short index, see [llms.txt](https://metaobjects.dev/llms.txt). For the canonical spec and source, see the [GitHub repo](https://github.com/metaobjectsdev/metaobjects). When this file is out of date relative to the GitHub source, the GitHub source wins.
66

@@ -31,7 +31,7 @@ If you are an AI assistant helping someone adopt MetaObjects, do this **first**
3131

3232
1. **Install the port's package:**
3333
- TypeScript / Node: `npm install -D @metaobjectsdev/cli @metaobjectsdev/codegen-ts`
34-
- Java / Kotlin: add `com.metaobjects:metaobjects-metadata`, `com.metaobjects:metaobjects-codegen-spring` (Java) or `com.metaobjects:metaobjects-codegen-kotlin` (Kotlin), and `com.metaobjects:metaobjects-maven-plugin`, all at `7.11.3`.
34+
- Java / Kotlin: add `com.metaobjects:metaobjects-metadata`, `com.metaobjects:metaobjects-codegen-spring` (Java) or `com.metaobjects:metaobjects-codegen-kotlin` (Kotlin), and `com.metaobjects:metaobjects-maven-plugin`, all at `7.11.4`.
3535
- Python: `pip install metaobjects`
3636
- C#: install the MetaObjects .NET tool (invoked as `dotnet meta`).
3737
2. **Run `meta init`** (the Node `meta` CLI). It works in any project that has Node — including a JVM or Python project with a TypeScript frontend. It scaffolds a slim always-on `.metaobjects/AGENTS.md` + `.metaobjects/CLAUDE.md` (auto-wired via an `@.metaobjects/AGENTS.md` import line into the project's root `CLAUDE.md`/`AGENTS.md`, so it loads automatically) plus six `metaobjects-*` Claude Code skills under `.claude/skills/`, carrying only the project's language reference fragments. Re-run `meta init --refresh-docs` to update the agent docs after a CLI upgrade. (The Node `meta` CLI is the single agent-context scaffolder for every backend, by design — ADR-0033; the JVM/Python/C# CLIs deliberately redirect to it. For a non-Node project, scaffold just the agent context with `npx meta agent-docs --server <lang>`.)
@@ -93,11 +93,11 @@ Because the render is conformance-gated, the determinism guarantee holds in ever
9393

9494
| Language | Status | Notes |
9595
|---|---|---|
96-
| TypeScript | Reference implementation, npm `0.20.1` | All four pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
97-
| Java | Maven Central `7.11.3` | Spring REST + JPA codegen, OMDB runtime persistence (pure data-access) with Spring-tx. Fully green across all conformance corpora. |
98-
| Kotlin | Maven Central `7.11.3` | KotlinPoet codegen + Exposed runtime + `metadata-ktx` facade. Ships via the Java reactor. |
99-
| C# | NuGet `0.19.3` (.NET tool) | Loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. `dotnet meta` tool. |
100-
| Python | PyPI `0.19.5` | Loader + serializer + render + verify + codegen + `ObjectManager` runtime. Fully green across all corpora. |
96+
| TypeScript | Reference implementation, npm `0.20.3` | All four pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
97+
| Java | Maven Central `7.11.4` | Spring REST + JPA codegen, OMDB runtime persistence (pure data-access) with Spring-tx. Fully green across all conformance corpora. |
98+
| Kotlin | Maven Central `7.11.4` | KotlinPoet codegen + Exposed runtime + `metadata-ktx` facade. Ships via the Java reactor. |
99+
| C# | NuGet `0.19.4` (.NET tool) | Loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. `dotnet meta` tool. |
100+
| Python | PyPI `0.19.6` | Loader + serializer + render + verify + codegen + `ObjectManager` runtime. Fully green across all corpora. |
101101

102102
Conformance fixtures live at [`fixtures/`](https://github.com/metaobjectsdev/metaobjects/tree/main/fixtures). Every port runs the shared corpus byte-identically: metamodel (`conformance/`, ~90 fixtures), render, persistence (Testcontainers Postgres, with an `op: roundtrip` gate so every `field.*` subtype write+read round-trips on every port), api-contract (20 scenarios, two lanes — a reference server AND each port's generated API booted over HTTP), registry (byte-matched metamodel-vocabulary manifest, live + green in all five ports), and yaml/verify.
103103

@@ -148,7 +148,7 @@ Universal web client (`client/web/packages/`): `@metaobjectsdev/runtime-web`, `@
148148

149149
## Java / Kotlin Maven coordinates
150150

151-
All published to Maven Central under `com.metaobjects:*` at `7.11.3`:
151+
All published to Maven Central under `com.metaobjects:*` at `7.11.4`:
152152

153153
- `metaobjects-metadata`, `metaobjects-metadata-ktx`
154154
- `metaobjects-codegen-base`, `metaobjects-codegen-mustache`, `metaobjects-codegen-spring`, `metaobjects-codegen-kotlin`, `metaobjects-codegen-plantuml`
@@ -185,7 +185,7 @@ Project marker directory: `.metaobjects/`.
185185

186186
## Quickstart (Java / Kotlin)
187187

188-
Add the Maven coordinates above at `7.11.3`. Run codegen with `mvn metaobjects:generate` and codegen-drift checks with `mvn metaobjects:verify`. Configure generators (including Kotlin generators, which run through the same goal) on the `metaobjects-maven-plugin`. See [`server/java/`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java) and [`server/java/codegen-kotlin/README.md`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java/codegen-kotlin).
188+
Add the Maven coordinates above at `7.11.4`. Run codegen with `mvn metaobjects:generate` and codegen-drift checks with `mvn metaobjects:verify`. Configure generators (including Kotlin generators, which run through the same goal) on the `metaobjects-maven-plugin`. See [`server/java/`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java) and [`server/java/codegen-kotlin/README.md`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java/codegen-kotlin).
189189

190190
---
191191

0 commit comments

Comments
 (0)