Contribution Guidelines
This repository contains a Jekyll-based site with minimal dependencies and self-contained interactive examples. Follow these conventions when proposing changes.
General style
- Keep pages lightweight. Avoid large binary assets and external dependencies whenever possible.
- Interactive examples should be plain HTML/CSS/JS with no build step other than optional
esbuildbundling noted in the example documentation. - Pages can opt into Schema.org metadata by setting
schema_typein the front matter. New pages should consider adding a suitable type. - Navigation for examples is driven by
_data/examples.yml; add entries there when creating new example pages. - When creating new pages, update
_includes/nav.htmlso they appear in the main navigation and add them tositemap.mdif relevant. - HTML examples in
/examples/should include the Google Tag Manager snippetGTM-WXM2VXQHas shown in existing files. - Commit messages follow the pattern
Verb short summary, e.g.Add new graph exampleorFix broken link. - Keep styling lightweight and modify
assets/main.scssrather than adding large frameworks. - If Bundler is not installed, run
.codex/setup.shto install version 2.1.4 before building.
Local testing
- Ensure Ruby and Bundler are available.
- Install dependencies with
bundle install(first run only). - Build the site with
bundle exec jekyll build. This should succeed without warnings.
If interactive examples include a simple smoke-watch as seen in examples/petri-to-wbs.html, check that the page loads without triggering the fallback message in a browser after building.