# accent-proust > accent-proust is a Rust implementation of the Markdoc language: parse, validate, transform, render, and format. It also compiles to WebAssembly and is published to npm for use in a browser, and ships as a command for the shell. These pages cover the Rust API, the JavaScript API, the command line, the Markdoc language itself, the architecture, and every declared divergence from upstream Markdoc. ## Playground - [Playground](/accent-proust/playground): The engine on this page is accent-proust compiled to WebAssembly. Edit the source and the preview, the diagnostics and… ## Documentation - [Architecture](/accent-proust/docs/architecture): Five pure stages, three trait seams, a workspace of hosts around them, and two ratchets that keep the port honest. - [Command line](/accent-proust/docs/cli): The same engine as a command: format Markdoc, validate it against a schema file, and render it, with exit codes a CI… - [Divergences](/accent-proust/docs/divergences): The sixteen places this implementation deliberately behaves differently from upstream Markdoc, why each one was chosen… - [JavaScript](/accent-proust/docs/javascript): The same engine compiled to WebAssembly and published to npm. Four entry points, a configuration object for your own… - [Rust](/accent-proust/docs/rust): Install the crate, run the pipeline, define a tag, and read the errors. Every snippet on this page is compiled and run… - [The Markdoc language](/accent-proust/docs/language): CommonMark plus a tag syntax. What the syntax is, what this implementation ships built in, and where the language stops… ## Optional - [Source](https://github.com/zoosky/accent-proust) - [API documentation (docs.rs)](https://docs.rs/accent-proust) - [crates.io](https://crates.io/crates/accent-proust) - [RSS Feed](/accent-proust/feed.xml): Subscribe to content updates - [Sitemap](/accent-proust/sitemap.xml): Full site map for crawlers