# @metaobjectsdev/render

> Logic-less, deterministic text render engine (Mustache) for MetaObjects templates — provider-resolved partials, format-driven escaping, zero core dependency.

Latest version **1.0.4** (published 2026-09-14) · Apache-2.0 license · 3.5K weekly downloads

## Install

```sh
npm install @metaobjectsdev/render
pnpm add @metaobjectsdev/render
yarn add @metaobjectsdev/render
bun add @metaobjectsdev/render
```

## Health

**Score 80/100 (A)** — status: active.

Positive: has types; esm support; no vulnerabilities; recently updated; high maintenance score; growing popularity.

## Facts

| | |
|---|---|
| Version | 1.0.4 |
| Published | 2026-09-14 |
| First published | 2026-05-23 |
| Weekly downloads | 3.5K |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 1 |
| Unpacked size | 272 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Doug Mealing <doug@dougmealing.com> |
| Maintainers | dougmealing |
| Keywords | metaobjects, render, mustache, prompt, template |

## Links

- npm: https://www.npmjs.com/package/@metaobjectsdev/render
- Repository: https://github.com/metaobjectsdev/metaobjects
- Homepage: https://metaobjects.dev
- Issues: https://github.com/metaobjectsdev/metaobjects/issues
- npm.io page: https://npm.io/package/@metaobjectsdev/render

## Dependencies (1)

- [mustache](https://npm.io/package/mustache.md) ^4.2.0

## Alternatives

- [localforage](https://npm.io/package/localforage.md) — 6.2M weekly downloads
- [localforage-observable](https://npm.io/package/localforage-observable.md) — 30.8K weekly downloads
- [@y/y](https://npm.io/package/@y/y.md) — 30.1K weekly downloads
- [@ledgerhq/coin-algorand](https://npm.io/package/@ledgerhq/coin-algorand.md) — 1.1K weekly downloads
- [@temporal-architect/claude-plugin](https://npm.io/package/@temporal-architect/claude-plugin.md) — 335 weekly downloads

## Recent versions

- 1.0.4 (latest) — 2026-09-14
- 1.0.5-rc.2 (next) — 2026-09-17
- 1.0.5-rc.1 — 2026-09-16
- 1.0.4-rc.1 — 2026-09-14
- 1.0.3 — 2026-09-12
- 1.0.2 — 2026-09-11
- 1.0.1 — 2026-09-10
- 1.0.0 — 2026-09-09
- 1.0.0-rc.8 — 2026-09-09
- 1.0.0-rc.7 — 2026-09-09
- 1.0.0-rc.6 — 2026-09-09
- 1.0.0-rc.5 — 2026-09-08
- 1.0.0-rc.4 — 2026-09-07
- 1.0.0-rc.3 — 2026-09-07
- 1.0.0-rc.2 — 2026-09-07
- … 153 more at https://npm.io/package/@metaobjectsdev/render/versions

## README

# @metaobjectsdev/render

Logic-less, deterministic text render engine (Mustache) for MetaObjects templates — provider-resolved partials, format-driven escaping, and stable, snapshot-testable output. Zero runtime dependency on the rest of MetaObjects.

Part of the [MetaObjects](https://github.com/metaobjectsdev/metaobjects) monorepo.

## Install

```bash
npm install @metaobjectsdev/render
```

## What it provides

- **`render()`** — render a MetaObjects `template.output` / `template.prompt` against a typed payload. Deterministic and cache-stable (no whitespace drift that would silently break exact-prefix prompt-cache hits), so output is snapshot-testable.
- **Provider-resolved partials + format-driven escaping** (text / html / xml / csv / json / markdown).
- **`verify()`** — a build-time drift check that every `{{field}}` referenced by a template resolves to a field on its payload value-object; a renamed field fails the build instead of silently degrading a prompt.

This engine backs the prompt-construction pillar — the generated `render<Name>()` helpers emitted by `@metaobjectsdev/codegen-ts` wrap it. See the **metaobjects-prompts** skill and the repo `docs/` for authoring `template.*` and payload VOs.

---
_Source: https://npm.io/package/@metaobjectsdev/render · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
