Contributing to OctoMY™ documentation
This is a short cheat sheet for contributing to the user-facing documentation under content/doc/published/. Full conventions live in the style guide that ships with a built copy of OctoMY™.
Three rules
-
Source is pure markdown. No YAML frontmatter, no
/static/URL prefix, no Jinja{% … %}block tags, and no links into the developer-only internal docs. The only templating allowed in the body is{{ context.config.get('org-name') }}for the project name andfor hidden comments. -
Page metadata lives in a sidecar. Each
<page>.mdmay have a co-located<page>.meta.yamlthat carries the website styling, in-app behaviour, and globally-surfaced data (tags, prerequisites, …) for that page. The sidecar is split into three top-level blocks:website:,in_app:, andglobal:. Adding a key that is not in the schema is rejected by lint. -
Lint locally before pushing. Build the
helpbuildtool once, then run it over the tree:helpbuild --input content/doc/published/ --lint --no-widget-manifest-checkIt will reject the most common authoring mistakes (stray frontmatter fences,
/static/links, links into internal docs, unknown sidecar keys) at the line where they happen.
What goes in which file
| You want to … | Edit this |
|---|---|
| Add a paragraph, fix a typo, restructure a section | The page's <page>.md |
| Change which website wrapper / pre-/post-wrappers / Bootstrap badges show up | The page's <page>.meta.yaml, under website: |
| Add prerequisites / related concepts / next-step links | The page's <page>.meta.yaml, under global: |
| Change the in-app TOC label / sort order / search rank | The page's <page>.meta.yaml, under in_app: |
| Add a brand-new image | Drop the file under the page's images/ (or a shared published/images/... for cross-page assets), then reference it as ./images/foo.png or /images/shared/foo.png |
| Add a brand-new widget screenshot | Use the widget: URL scheme (widget:ActivityOrbWidget?mode=offline) — the build pipeline renders these at deploy time and at runtime in-app |
Where to look when something is wrong
helpbuild --lintoutput points atfile:line:for every violation.- Schema for the sidecar:
content/doc/publishing/page-meta.schema.json. - Full policy (for contributors who want the long version): see the developer documentation that ships with a built copy of OctoMY™.