Skip to content

Repository files navigation

👉 Visit the DatoCMS homepage or see What is DatoCMS?


Node.js CI

structured-text

Monorepo with Typescript libraries for handling and rendering DatoCMS Structured Text documents.

Packages

Official

About Structured Text

Working on this repository

An npm-workspaces monorepo built with Turborepo and released with Changesets.

git clone https://github.com/datocms/structured-text && cd structured-text
npm install     # one install for all ten packages; no bootstrap step
npm run build   # turbo, in dependency order
npm test        # eslint, then the Jest suite (448 tests, nothing external)

Node 22 or later — see .nvmrc. The published packages themselves have no such requirement; it is the release tooling that does.

The packages resolve each other through their built dist/, so run npm run build before npm test on a fresh checkout.

Releasing (maintainers)

Every user-visible change needs a changeset: run npx changeset from the repo root in the same PR, pick the packages that changed and the bump level (patch is for bug fixes only, new API surface is minor), and commit the file it writes under .changeset/. See .changeset/README.md for the details — in particular, the packages version independently, so which ones you list matters.

To release, from an up-to-date, clean main, run npm run publish from the repo root. It builds and tests, applies the pending changesets — bumping only the packages that changed and writing their CHANGELOG.mds — publishes to npm, and only then tags each published package name@X.Y.Z, pushes, and creates a GitHub release per tag whose notes come straight from those changelog entries. An interrupted release is resumed by re-running it, never undone. Use npm run publish-next for a prerelease under the next dist-tag.

License

This repository is published under the MIT license.


What is DatoCMS?

DatoCMS - The Headless CMS for the Modern Web

DatoCMS is Headless CMS for the modern web. Trusted by 25,000+ businesses, agencies, and individuals, it gives your team one place to manage content and ship it to any website, app, or device via API.

New here? Start with Create free account and the Documentation. Stuck? Ask the Community. Curious what's new? Product Updates.

Building with AI: Agent Skills turn coding assistants (Claude Code, Cursor) into expert DatoCMS developers, with full read/write via the auto-installed CLI. No local terminal? Use the MCP Server instead.

Talking to DatoCMS from code:

  • Content Delivery API (CDA) — the fast, read-only GraphQL API your website/app uses to fetch published content.
  • Content Management API (CMA) — the REST API for creating and updating content, models, and project settings (think scripts, migrations, integrations).
  • CLI — terminal tool for schema migrations and importing from Contentful/WordPress.

Framework guides: end-to-end recipes for fetching content, rendering Structured Text, optimizing images/video, handling SEO, and setting up live preview with visual editing in Next.js, Nuxt, Svelte, and Astro.

Want a head start? Browse our starter projects — ready-to-deploy example sites for popular frameworks.

About

No description, website, or topics provided.

Resources

Stars

26 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages