Skip to the content.

Example article.chalk

.chalk is a modern, modular, markup language for creating structured, domain-specific documents. It is designed to be fundamentally expandable, allowing developers to define custom elements and document types through libraries.

These purpose-built libraries provide the rules and structure for content, specifying what elements exist, how they can be nested, what attributes they accept, and how they’re validated. This enables developers to build document-based applications with user-friendly, domain-specific syntax tailored to their users’ needs, whether those users are content authors, educators, form creators, or the developers themselves.

.chalk gives you fine-grained control over your document structure while maintaining simple, readable syntax. Create libraries for documentation systems, educational platforms, content management, forms, blogs, or any structured domain, combining the intuitiveness of human-friendly markup with the precision of fully customisable elements.

The dotchalk library is the JavaScript implementation of this language, providing an API to build element libraries and compile .chalk documents into structured JSON for use in any application.

Documentation

Below are links to the complete documentation for the .chalk project:

Installing the dotchalk Library

This package is published on GitHub Packages. To use it in your project, add the following to your .npmrc:

@jackhgns:registry=https://npm.pkg.github.com

Then install with:

npm install @jackhgns/dotchalk

Note: This is not available on the public npm registry. You must use the .npmrc configuration above.

Additional Resources

Below are links to community resources for working with .chalk:


License

The dotchalk project is licensed under the Apache-2.0 LICENSE.

Changelog & Roadmap

See the Changelog for version history and the Project Roadmap for planned features and updates.

Acknowledgements

The dotchalk project was written and tested with the assistance of generative AI tools.