Content as structured data

We compile content to syntax trees and syntax trees to content.
We also provide hundreds of packages to work on the trees in between.
You can build on the unified collective to make all kinds of interesting things.


We provide the building blocks: from tiny, focussed, modular utilities to plugins that combine them to perform bigger tasks. And much, much more. You can build on unified, mixing and matching building blocks together, to make all kinds of interesting new things.

  1. Prettier

    Uses unified to format Markdown

  2. Gatsby

    Uses unified to pull content into GraphQL

  3. Write Music

    Uses unified to visualize sentence length

  4. Node.js

    Uses unified to check and build their docs

  5. alex

    Uses unified to catch insensitive, inconsiderate writing

  6. See 23 other cases


We provide the interface: for parsing, inspecting, transforming, and serializing content. You work on structured data. Learn how to plug building blocks together, write your own, and make things with unified.

  1. Intro to unified

    Guide that summarises the what and why of unified

    1. guide
    2. welcome
    3. introduction
  2. Tree traversal

    How to do tree traversal (also known as walking or visiting a tree)

    1. recipe
    2. unist
    3. tree
    4. traverse
    5. walk
    6. visit
  3. Use unified

    Guide that delves into transforming Markdown to HTML

    1. guide
    2. use
    3. transform
    4. remark
    5. rehype
  4. Create a plugin

    Guide that shows how to create a (retext) plugin

    1. guide
    2. plugin
    3. retext
  5. Create an editor

    Guide that shows how to create a fancy app ✨

    1. guide
    2. editor
    3. dingus
  6. See 4 other articles


The ever growing ecosystem that the unified collective provides today consists of 250 open source projects, with a combined 11k stars on GitHub. In the last 30 days, the 372 packages maintained in those projects were downloaded 225m times from npm. Much of this is maintained by our teams, yet others are provided by the community.

  1. unist-util-stringify-position

    unist utility to serialize a node, position, or point as a human readable location
    1. 78%
    2. 15m
    3. 318 B
  2. mdast-util-to-nlcst

    mdast utility to transform to nlcst
    1. 71%
    2. 649k
    3. 1.41 kB
  3. hast-util-sanitize

    hast utility to sanitize nodes
    1. 71%
    2. 368k
    3. 2.14 kB
  4. unist-util-map

    unist utility to create a new tree by mapping all nodes
    1. 71%
    2. 330k
    3. 701 B
  5. mdast-util-to-hast

    mdast utility to transform to hast
    1. 76%
    2. 3m
    3. 4.24 kB
  6. See 372 packages and 250 projects


Maintaining the collective, developing new projects, keeping everything fast and secure, and helping users, is a lot of work. Thankfully, we are backed financially by our sponsors. This allows us to spend more time maintaining our projects and developing new ones. To support our efforts financially, sponsor or back us on OpenCollective.

  1. GatsbyJS

  2. ZEIT

    Our mission is to make cloud computing accessible to everyone

  3. Netlify

    Netlify is everything you need to build fast, modern websites: continuous deployment, serverless functions, and so much more.

  4. Holloway

    We publish Guides for navigating life’s complexities.

  5. ThemeIsle

  6. See 23 other sponsors