# commonmark.js

> reference implementation of CommonMark in JavaScript

**Wikidata**: [Q103715535](https://www.wikidata.org/wiki/Q103715535)  
**Source**: https://4ort.xyz/entity/commonmark-js

## Summary
commonmark.js is the reference implementation of CommonMark, a standardized specification of Markdown, written in JavaScript. It functions as a JavaScript library that allows for the parsing and rendering of CommonMark-compliant Markdown across multiple computing platforms. As free software, it is distributed under terms that permit users to freely run, study, change, and distribute it.

## Key Facts
*   commonmark.js is licensed under the 2-clause BSD License.
*   It is a reference implementation of the CommonMark specification.
*   The software is written in JavaScript.
*   commonmark.js is classified as a JavaScript library and free software.
*   It is designed to be cross-platform, meaning it can operate on multiple computing platforms.
*   The latest stable version provided is 0.23.0, released on December 29, 2015.
*   Its official website is commonmark.org.
*   The source code is hosted on GitHub at https://github.com/commonmark/commonmark.js.
*   It is available as an npm package named `commonmark`.
*   Key software dependencies include `entities`, `minimist`, `mdurl`, and `string.prototype.repeat`.

## FAQs
### Q: What is commonmark.js?
A: commonmark.js is the official reference implementation of CommonMark, a standardized version of Markdown, developed using JavaScript. It serves as a JavaScript library for processing CommonMark-formatted text.

### Q: What is the license for commonmark.js?
A: commonmark.js is distributed under the 2-clause BSD License. This makes it free software, allowing users to freely use, modify, and distribute it.

### Q: What programming language is commonmark.js written in?
A: commonmark.js is written in JavaScript. This allows it to be integrated into various web and server-side JavaScript environments.

### Q: What is the latest stable version of commonmark.js available in the provided data?
A: Based on the provided data, the latest stable version is 0.23.0, which was released on December 29, 2015.

### Q: Is commonmark.js free software?
A: Yes, commonmark.js is free software. It is distributed under the 2-clause BSD License, which grants users the freedom to run, study, change, and distribute the software and its modified versions.

## Why It Matters
commonmark.js holds significant importance as the reference implementation for CommonMark, a crucial specification aiming to standardize Markdown. Before CommonMark, various Markdown implementations often rendered the same input differently, leading to inconsistencies and compatibility issues. By providing a definitive, robust, and reliable implementation in JavaScript, commonmark.js offers developers a consistent way to parse and render Markdown, ensuring that content written in CommonMark behaves predictably across different applications and platforms. Its status as free software under the 2-clause BSD License further enhances its impact, promoting widespread adoption and allowing developers to freely integrate, modify, and distribute it in their projects without restrictive licensing concerns. This cross-platform JavaScript library thus plays a vital role in fostering a more unified and dependable ecosystem for Markdown content.

## Notable For
*   Being the official reference implementation of the CommonMark specification in JavaScript, ensuring consistent Markdown parsing.
*   Its open-source nature, distributed under the permissive 2-clause BSD License.
*   Its cross-platform compatibility, enabling its use across diverse computing environments.
*   Its role as a foundational JavaScript library for handling standardized Markdown content.

## Body

### Overview
commonmark.js is a JavaScript library that serves as the reference implementation for CommonMark, a standardized specification of the Markdown syntax. Its primary function is to parse Markdown text that adheres to the CommonMark specification and convert it into other formats, typically HTML.

### Technical Specifications
*   **License**: The software is licensed under the 2-clause BSD License.
*   **Programming Language**: commonmark.js is developed using JavaScript.
*   **Operating System Compatibility**: It is designed to be cross-platform, allowing it to run on various computing platforms.
*   **Dependencies**: The library depends on other software packages, including `entities`, `minimist`, `mdurl`, and `string.prototype.repeat`.
*   **Source Code**: The source code repository is publicly available on GitHub at https://github.com/commonmark/commonmark.js.
*   **npm Package**: It is distributed as an npm package under the name `commonmark`.

### Versions
commonmark.js has undergone several stable releases, with the following versions documented:
*   **0.17**: Released on January 25, 2015.
*   **0.17.1**: A stable version released on January 29, 2015.
*   **0.18.1**: A stable version released on March 4, 2015.
*   **0.18.2**: A stable version released on April 22, 2015.
*   **0.19.0**: A stable version released on April 29, 2015.
*   **0.20.0**: A stable version released on June 8, 2015.
*   **0.21.0**: A stable version released on July 15, 2015.
*   **0.22.0**: A stable version released on August 24, 2015.
*   **0.22.1**: A stable version released on November 18, 2015.
*   **0.23.0**: The latest stable version provided in the data, released on December 29, 2015.

### Classification
commonmark.js is classified as a JavaScript library and is considered free software. It is an implementation of the CommonMark specification.

## References

1. [Source](https://github.com/commonmark/commonmark-spec/blob/master/README.md)
2. [Source](https://api.github.com/repos/commonmark/commonmark.js)
3. [Release 0.17. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.17)
4. [Release 0.17.1. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.17.1)
5. [npmjs](https://registry.npmjs.com/commonmark)
6. [Release 0.18.1. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.18.1)
7. [Release 0.18.2. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.18.2)
8. [Release 0.19.0. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.19.0)
9. [Release 0.20.0. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.20.0)
10. [Release 0.21.0. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.21.0)
11. [Release 0.22.0. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.22.0)
12. [Release 0.22.1. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.22.1)
13. [Release 0.23.0. 2015](https://github.com/commonmark/commonmark.js/releases/tag/0.23.0)
14. [Release 0.24.0. 2016](https://github.com/commonmark/commonmark.js/releases/tag/0.24.0)
15. [Release 0.25.0. 2016](https://github.com/commonmark/commonmark.js/releases/tag/0.25.0)
16. [Release 0.25.1. 2016](https://github.com/commonmark/commonmark.js/releases/tag/0.25.1)
17. [Release 0.26.0. 2016](https://github.com/commonmark/commonmark.js/releases/tag/0.26.0)
18. [Release 0.27.0. 2016](https://github.com/commonmark/commonmark.js/releases/tag/0.27.0)
19. [Release 0.28.0. 2017](https://github.com/commonmark/commonmark.js/releases/tag/0.28.0)
20. [Release 0.28.1. 2017](https://github.com/commonmark/commonmark.js/releases/tag/0.28.1)
21. [Release 0.29.0. 2019](https://github.com/commonmark/commonmark.js/releases/tag/0.29.0)
22. [Release 0.29.1. 2020](https://github.com/commonmark/commonmark.js/releases/tag/0.29.1)
23. [Release 0.29.2. 2020](https://github.com/commonmark/commonmark.js/releases/tag/0.29.2)
24. [Release 0.29.3. 2020](https://github.com/commonmark/commonmark.js/releases/tag/0.29.3)
25. [Release 0.30.0. 2021](https://github.com/commonmark/commonmark.js/releases/tag/0.30.0)
26. [Release 0.31.0. 2024](https://github.com/commonmark/commonmark.js/releases/tag/0.31.0)
27. [Release 0.31.1. 2024](https://github.com/commonmark/commonmark.js/releases/tag/0.31.1)
28. [Release 0.31.2. 2024](https://github.com/commonmark/commonmark.js/releases/tag/0.31.2)