content is a free, open source content management systems (cms) project written in TypeScript and released under MIT. It has 3,676 GitHub stars, 749 forks and 54 open issues, and was last pushed 17 hours ago. On this registry it ranks #24 of 70 tracked projects in Content Management Systems (CMS), with 5 head-to-head comparisons available. It gained 6 stars over the last 30 tracked days.

What is content?

Nuxt Content is an MIT-licensed, file-based content management system for Nuxt applications that reads Markdown, YAML, CSV, and JSON files from a project's content/ directory and turns them into a typed data layer.

What it is

Nuxt Content is a TypeScript module for the Nuxt ecosystem, distributed through npm as @nuxt/content and documented at content.nuxt.com. It reads the content/ directory inside a project, parses .md, .yml, .csv, and .json files, and exposes the result as a data layer that the application can query. Through the MDC syntax, Vue components can be rendered directly inside Markdown, so prose and interactive UI can live in the same file. The module supports Nuxt 3 and is designed to work in serverless and edge environments such as Cloudflare Workers. Its repository topics describe it as cms, git-cms, markdown, mdc, nuxt, nuxt-module, and vue.

The concrete problem it solves is the split between content and code in a conventional database-backed CMS. Instead of storing articles in an external system reached over an API, the content sits as files in the project repository, where it is versioned alongside the code in Git. That replaces the usual arrangement of a separate CMS service, a content database, and hand-written fetching logic with a single directory and a query builder built on top of a SQLite database. The project carries 3,665 stars, 746 forks, and 54 open issues.

Key capabilities

  • Reads and parses .md, .yml, .csv, and .json files from the content/ directory and exposes them as a data layer.
  • Renders Vue components inside Markdown using the MDC syntax.
  • Provides fully typed collections and queries.
  • Ships a query builder on top of a SQLite database.
  • Generates navigation structures from the content tree.
  • Adds code highlighting through Shiki.
  • Works in serverless and edge environments such as Cloudflare Workers, and provides fast hot module replacement during development.

Who uses it and how

  • Teams that treat content as source: the git-cms topic points to workflows where Markdown files are committed to the repository and reviewed through the same pull-request process as code.
  • Documentation and marketing sites built on Nuxt 3 that need navigation generation, typed queries, and highlighted code samples without a separate content backend.
  • Projects deployed to serverless and edge platforms, where the module runs on runtimes such as Cloudflare Workers.
  • Sites that want interactive elements inside long-form pages, using the MDC syntax to embed Vue components in Markdown.
  • Editorial teams that prefer a visual layer, using Nuxt Studio at nuxt.studio on top of the same file-based content.

Getting started

Install the @nuxt/content package from npm and follow the documentation at content.nuxt.com; contributors working on the module itself clone the repository, then run pnpm install, pnpm dev:prepare, and pnpm dev, with pnpm prepack to build and pnpm test to run the test suite.

How it compares

No paid products or named competing tools appear in the facts, so this project stands alone in this registry and no direct comparison can be drawn. The git-cms topic places it in the file-based, Git-backed category rather than among hosted content platforms, but no specific alternative is identified here.

When to use it — and when not to

Choose it when the application is already a Nuxt 3 project and the content can live in the repository, since the module assumes that framework and expects a Node and pnpm build toolchain plus an internal SQLite-backed query layer. Teams that need a browser-based editorial workflow without touching Git, or that run a non-Nuxt stack, should look elsewhere. The README is short and largely links out to the documentation site, so much of the operational detail is not contained in the repository itself.

project readme (upstream, from github) — read inline

nuxt-content-social-card

Nuxt Content

npm version npm downloads License Nuxt Volta

Nuxt Content reads the content/ directory in your project, parses .md, .yml, .csv or .json files and creates a powerful data layer for your application. Bonus, use Vue components in Markdown with the MDC syntax.

Features

  • Nuxt 3 support
  • Work in serverless and edge environments (Cloudflare Workers, etc.)
  • Render Vue components in Markdown with the MDC syntax
  • Fully typed collections and queries
  • Navigation generation
  • Blazing fast hot module replacement in development
  • Code highlighting with Shiki
  • Powerful query builder on top of SQLite database
  • ... and more

💻 Development

  • Clone repository
  • Install dependencies using pnpm install
  • Prepare using pnpm dev:prepare
  • Build using pnpm prepack
  • Try playground using pnpm dev
  • Test using pnpm test

License

MIT - Made with 💚

Frequently asked questions

Is content free to use?

content is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does content do?

The file-based CMS for your Nuxt application, powered by Markdown and Vue components.

What is content written in?

content is primarily written in TypeScript. Its source is publicly available at https://github.com/nuxt/content, and it has 3,676 GitHub stars.