Getting Started

Table of Contents


Currently Rockplate has the default official implementation in TypeScript (JavaScript) for browser and Node Js which is production ready. We have plans to implement and support more languages in the future. When other language implementations are available, the documentation will include them too.

  • Written in TypeScript
  • No dependencies, 5kb minified, gzipped
  • Zero RegEx lexer/AST builder (High performance and high security)
  • Battle-tested with 🔥 100% code coverage

Watch out the rockplate organization for any ongoing work. We welcome your contributions. Please name your implementation rockplate-<langname>. E.g: rockplate-python, rockplate-csharp, etc.


Installing with npm or yarn

Installing with <script> tag



Usage with <script> tag:

Builder and Parser

See Advanced Usage section to learn how to use the Builder and Parser classes directly instead of Rockplate class.

Usage with an .rpl and .rphtml file

NOTE: If you're using Visual Studio Code, install the Official Extension to get IntelliSense and Linting support for .rpl and .rphtml files.

Rockplate VSCode

You can embed schema in an .rpl or .rphtml file in json format on top of the file.


External schema file

If you choose to have your schema in an external json file, you should reference that json file from your rpl file by defining a json object on top of the file with only a key named "schema" with the json file path relative to the rpl file

my-schema.json file

my-template.rpl file

Async schema

See Advanced Usage section to learn how to read files asynchronously instead of synchronously.

Made with ❤️ from Safraz Razik