Changelog

What landed when — MCP, REST v2, icons, @dtpr/ui, and this microsite.

Changelog

Most recent first. Grouped by surface. See the repository for the full commit history.

2026-04-18

Icons

  • Icon composition pipeline (#270) Shape × symbol × variant composition with default / dark / context-colored variants and the WCAG innerColor rule. Adds pre-baked R2 point-read with on-the-fly fallback. New REST routes: GET /api/v2/shapes/:shape.svg, GET /api/v2/schemas/:version/symbols/:symbol_id.svg, GET /api/v2/schemas/:version/elements/:element_id/icon[.<variant>].svg. New MCP tool: get_icon_url. References: Icon composition, REST icon routes.

Site

  • dtpr.ai microsite placeholder (#271) Docus + Nuxt 4 skeleton deployed on Cloudflare Workers with a D1 binding for content queries. Minimal landing; no documentation yet.

2026-04-17

@dtpr/ui

  • Component library + render_datachain MCP tool (#267) Three subpath exports: @dtpr/ui/core (10 framework-neutral helpers), @dtpr/ui/vue (6 Vue 3 SFCs), @dtpr/ui/html (SSR via renderDatachainDocument). Default stylesheet wraps everything in @layer dtpr and exposes a full CSS custom-property token set. New MCP tool: render_datachain. New MCP resource: ui://dtpr/datachain/view.html (MCP Apps iframe handoff). References: Vue reference, Core reference, HTML SSR, Theming.

MCP

  • Read path on Cloudflare Workers (#265) Hand-rolled JSON-RPC over HTTP handler (workerd nodejs_compat can't load the SDK's CJS Ajv dep). Supported methods: initialize, notifications/initialized, tools/list, tools/call, resources/list, resources/read, ping. Shared ok / err envelope with _meta.content_hash / _meta.version. Initial tools: list_schema_versions, get_schema, list_categories, list_elements, get_element, get_elements, validate_datachain. References: Connecting, Envelope.

REST v2

  • api.dtpr.io/api/v2 read path (#265) Public, read-only JSON + SVG. Opaque cursor pagination (MAX_LIMIT = 200), field/locale projection, DTPR-Content-Hash + Cache-Control on version-scoped responses, static CORS allow-list. POST /schemas/:version/validate runs shape + semantic validation and always returns HTTP 200. References: REST v2, Pagination & fields, Errors.

API infrastructure

  • Standalone API scaffold + AI content migration (#262) Extracts DTPR content from the v1 site into a standalone API workspace. Establishes the schema authoring flow and migrates the ai datachain type.
  • CI: build @dtpr/ui + api/schema before typecheck (#268) Orders deploy workflows so generated types land before typecheck runs.
  • Drafting CLI + preview deploys + Claude Code plugin (#266)

docs.dtpr.io

  • Nuxt Studio with Google + GitHub OAuth (#269) Enables in-browser authoring for the existing v1 docs.

Source of truth

Every entry maps to a pull request on github.com/helpful-places/dtpr. Commit history on main is authoritative if this changelog falls behind.

Copyright © 2026