TypeScript VS gray-matter

Compare TypeScript vs gray-matter and see what are their differences.


TypeScript is a superset of JavaScript that compiles to clean JavaScript output. (by microsoft)


Smarter YAML front matter parser, used by metalsmith, Gatsby, Netlify, Assemble, mapbox-gl, phenomic, vuejs vitepress, TinaCMS, Shopify Polaris, Ant Design, Astro, hashicorp, garden, slidev, saber, sourcegraph, and many others. Simple to use, and battle tested. Parses YAML by default but can also parse JSON Front Matter, Coffee Front Matter, TOML Front Matter, and has support for custom parsers. Please follow gray-matter's author: https://github.com/jonschlinkert (by jonschlinkert)
Our great sponsors
  • Appwrite - The Open Source Firebase alternative introduces iOS support
  • SonarLint - Clean code begins in your IDE with SonarLint
  • talent.io - Download talent.io’s Tech Salary Report
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Scout APM - Truly a developer’s best friend
TypeScript gray-matter
883 9
84,538 2,774
0.9% -
9.9 0.0
6 days ago 7 days ago
TypeScript JavaScript
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of TypeScript. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-01.
  • Ten Years of TypeScript
    8 projects | news.ycombinator.com | 1 Oct 2022
    > But they admitted namespaces, enums

    And decorators. But this was very early on and they won’t ever do it again unless there’s a drastic change on principle and probably a reorg of global proportion. They categorically reject anything with runtime implications now, and to the point of decorators are actively working to align them with the standard as it’s approaching stability.

    > and interfaces into the language (the latter becoming more and more confusing as type aliases got more expressive) […] Is "as", "is", or "satisfies" expression-level?

    No. All of this is completely separate from the runtime and on a standards course to be treated effectively as comments.

    > But the enums!

    I’m one of the minority who actually likes TS enums, but I strongly suspect they’ll be deprecated, alongside namespaces, as soon as there’s general consensus around types as comments. The TypeScript team considers these mistakes and would very much like to be able to drop them. I’d welcome that too even though I quite like enums.

    The fact is TS has considerable backwards compatibility expectations, and aligning their mistakes with their goals is great on principle but something which would require thousands upon thousands of hours of labor for people to accommodate.

    You can snipe all you want, but if you think it’s that easy to resolve maybe I can direct you to https://github.com/microsoft/TypeScript/pulls

    I’m not affiliated with the team in any way but I’m almost totally certain they’d welcome a contribution that gets them closer to their stated principles where historical designs are entrenched, without breaking workflows for thousands of people and interrupting releases for millions.

    8 projects | news.ycombinator.com | 1 Oct 2022
    TypeScript has lots of great features and a few bizarrely bad ones. It’s great in spite of itself.

    The main misfeature is their dogmatic refusal to rewrite import paths (citing the “Preserve runtime behavior of all JavaScript code” principle mentioned in this article). Here’s a good summary of the problems this causes: https://github.com/microsoft/TypeScript/issues/42151

    I’m curious, how many people are using TSC only for type-checking, and a different system (eg esbuild or ts-node) to actually compile/bundle/execute their code?

    I think TypeScript would be even stronger if they focused fully on type-checking, and relaxed some of those dogmatic restrictions (and the many, many confusing config options) imposed by the JS code generator.

  • [AskJS] Do you consider ESM to have more benefits than drawbacks in node?
    6 projects | reddit.com/r/javascript | 27 Sep 2022
    Because it's implicit, CJS creates a bunch of resolution issues with Typescript, to the point where if you want to code for the browser, you can't easily can't and have to either recompile with something like webpack to rewrite the module resolution, or add .js to all your TS imports, which already looks weird (you'd think you're importing the .ts files). sip.js has that issue.
  • Announcing TypeScript 4.9 Beta
    2 projects | reddit.com/r/typescript | 24 Sep 2022
  • Peço ajuda numa oportunidade do trabalho
    3 projects | reddit.com/r/brdev | 23 Sep 2022
  • Ezno
    11 projects | news.ycombinator.com | 23 Sep 2022
    You can't actually narrow `unknown` down to a structure yet, as you have no way to test whether `property in unknown` or not.

    Well, until this is released! https://github.com/microsoft/TypeScript/pull/50666

  • How To Choose The Right Framework For Your Next Node.js App.
    8 projects | dev.to | 23 Sep 2022
    TypeScript ready: we work hard to maintain a TypeScript type declaration file so we can support the growing TypeScript community.
  • Learn how to unleash the full potential of the type system of TypeScript
    11 projects | news.ycombinator.com | 20 Sep 2022
  • Write typesafe APIs with zodios
    2 projects | dev.to | 17 Sep 2022
    Writing client APIs, that gives you autocompletion is time consuming. You allways endup writing the same kind of boilerplate code or have to use openapi code generators that are a pain to maintain. Zodios was created to make creating frontend (and optionally backend) API client a breeze. It's is an open source REST API toolbox with end-to-end typesafety. It allows you to create a REST API with a clean, intuitive and declarative syntax. It's best used with TypeScript, but it's also usable with pure JavaScript.
  • Decorator creating with API
    2 projects | reddit.com/r/typescript | 17 Sep 2022


Posts with mentions or reviews of gray-matter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-07-30.
  • Turn a Markdown blog to a simple SSG
    4 projects | dev.to | 30 Jul 2022
    Over the past few weeks, I mostly wrote on how to template a Node.js application with EJS using Express. Then, I wrote an article showing how to create a Markdown blog in Node.js using EJS, Express, gray-matter and markdown-it. Today, I'll combine those tutorials to turn the Markdown blog, from the last tutorial, into a simple SSG.
  • Markdown blog with EJS
    3 projects | dev.to | 25 Jul 2022
    gray-matter, to parse the front matter from the Markdown files
  • Create Blog Post Bookmarks in Next.js
    3 projects | dev.to | 6 Jun 2022
    Luckily for us, there is a fantastic NPM package that can help us with this. Let’s install it.
  • How I built my portfolio using NextJS, Typescript, and Chakra UI
    10 projects | dev.to | 24 Oct 2021
    gray-matter: Converts a string with front-matter to object.
  • How to create a blog for your Next.js and ChakraUI website
    4 projects | dev.to | 31 Jul 2021
    Load the frontmatter - gray-matter
  • How I Built An Incomplete CMS
    4 projects | dev.to | 23 Jun 2021
    I began building a blog application for a site that I may or may not finish. The bulk of the project is based on the blog-starter-typescript example in the NextJs GitHub repo. Their example loads markdown files from a folder in the root directory and uses remark and gray-matter to convert the markdown into html and to get file metadata. The example code for these function is located in their lib folder as api.ts and markdownToHtml.ts.

What are some alternatives?

When comparing TypeScript and gray-matter you can also consider the following projects:

Flutter - Flutter makes it easy and fast to build beautiful apps for mobile and beyond

front-matter - Extract YAML front matter from strings

zod - TypeScript-first schema validation with static type inference

esbuild - An extremely fast JavaScript and CSS bundler and minifier

zx - A tool for writing better scripts

rescript-compiler - The compiler for ReScript.

Tailwind CSS - A utility-first CSS framework for rapid UI development.

Yup - Dead simple Object schema validation

react-markdown - Markdown component for React

fp-ts - Functional programming in TypeScript

remark - remark is a popular tool that transforms markdown with plugins. These plugins can inspect and change your markup. You can use remark on the server, the client, CLIs, deno, etc.

linaria - Zero-runtime CSS in JS library