Contributing
Contributions — new concepts, corrections, better explanations, features — are welcome. Most contributions are just editing Markdown in knowledge/.
Workflow
- Fork the repo and clone your fork.
git clone https://github.com/<your-fork>/Bodhi.git cd Bodhi - Branch.
git checkout -b add-my-concept - Make your change.
- Adding/editing a concept → follow Concept Authoring.
- New cluster / relation / level / wizard step / comparison table → Configuration Reference.
- Build & validate (this regenerates
js/data.jsand runs the integrity check):npm run buildCommit the regenerated
js/data.jsalong with yourknowledge/changes — they must stay in sync (the validator enforces this). - Check it in the browser:
npm start - Open a PR with a short description of what you added/changed and why.
Quality bar
npm run validatemust pass — 0 errors. It checks dangling edges, duplicate ids, missing fields, cluster/relation validity, and bundle↔data sync.- Cite a real source for every concept (paper, official blog, or docs).
- Be current and accurate — verify claims against the source; prefer established techniques and clearly mark genuinely new ones.
- Stay offline — no CDNs, external fonts, scripts, or icons. Quick check:
grep -rn 'http' app.html css/style.css js/graph.js | grep -v 'w3.org/2000/svg' # should be empty (landing links out by design) - Keep it balanced — a clean, accurate, well-connected graph matters more than raw size. Avoid orphan nodes; add 2–4 meaningful relations.
What makes a good concept PR
- A tight one-line
descriptionand a clear detail paragraph. - Honest
when_to_useguidance (when to pick this over the alternatives). - Correct, minimal
relationsto existing concepts using the right verb. - At least one real reference; an
## Examplesnippet when it helps. - The right
clusterandlevel.
Attribution & licensing
Bodhi Map synthesizes publicly published research; credit for the underlying ideas belongs to the original authors, and every concept cites its source. By contributing, you agree your contributions are licensed under the project’s MIT License. If you add a source, make sure the citation is accurate — attribution is part of the quality bar.
Cutting a release
Maintainers: see Release Process for bumping the version and highlighting what’s new.