REPOSITORY ANALYSIS

json-render

A Jev UI-composition experiment inside the json-render website that selects from predefined component and property options.

E2 · source reviewedPublic material or source evidence was reviewed. A fixed-version source review requires checking a pinned revision; this is not a reproduction, performance endorsement, or safety guarantee.
Stars
18,200
Forks
954
License
Apache-2.0
Last commit
2026-09-23

What Jev does here

Evaluates component configurations through Vercel AI Gateway, then composeSpec assembles the UI specification.

Provides an inspectable composition path alongside token-by-token JSON generation.

This covers the website’s Jev experiment, not the whole framework. Claims such as 3.21 s versus 880 ms were not independently verified.

What task does this project fit?

Compose a UI from a declared component catalog instead of asking a model to emit unrestricted interface code.

Material analysed:

From input to action

  1. The website supplies a playground catalog, candidate recipes and synthetic platform state.
  2. A Jev evaluator through AI Gateway selects composition steps under element and depth limits.
  3. composeSpec assembles the specification; demo actions run only on later user interaction.

Implementation details that matter

Bound content has a sharing boundary

compose.ts sends display descriptions identifying existing elements but deliberately excludes field values, raw binding recipes and action parameters. Editing context is not the whole renderer state.

Inspect the supporting source ↗

A composed form is not an implemented service

The synthetic context explicitly describes validation/toast submit behavior, not authentication or messaging. Rendering a login form does not create a login backend.

Inspect the supporting source ↗

When to choose it

Useful for studying constrained component composition. Evaluate whether the catalog can express your interface; custom service behavior still needs ordinary application code.

How to inspect it yourself

Read composeUI in the pinned compose.ts. Compare elementDescriptions with initialState and the context description; verify maxDepth/maxElements are code constraints and that submit is described as a demo action.

Limits of this review

  • No UI-composition request was executed.
  • This is the website experiment, not a claim that the whole json-render framework depends on Jev.
Primary material used in this analysis