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. - Place bounded worked examples in an existing Library subject through
_data/library_materials.json(or_data/library_apps.jsonfor maintained apps), and place open enquiries in their relevant project. Keep one discoverable home for each example. - When creating new pages, link them from their existing subject or project rather than adding a top-level navigation item. Add them to
sitemap.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.