Skip to content

Development

The project follows the same workflow as the rest of the ecosystem:

yarn setup
yarn bfc

yarn bfc synchronizes version metadata, runs Ruff and Pytest, checks/builds MkDocs, and builds the Python distribution.

Human-editable documentation

The documentation is deliberately not generated into an immutable blob.

  • site/usage/languages/<code>/flowcharts.md contains the per-language Pseudocode / Mermaid / Graphviz page. yarn docs:sync preserves existing pages; yarn docs:regen is the explicit regeneration command.
  • thonnycontrib/pseudocode_i18n/documentation_i18n/<code>.json contains Thonny-specific Documentation-tab wording. Edit title, description, and examples directly.
  • Tests validate JSON/page structure and required rendering blocks, not exact prose, so translators and teachers can reword content safely.
  • Shared language semantics and syntax remain in the core; Thonny overlays only editor-specific prose.

Renderer overrides

Normal installations use the embedded mermaidx and PyGraphviz engines supplied by pseudocode-i18n. For integration testing, set PSEUDOCODE_I18N_MERMAID_EXECUTABLE or PSEUDOCODE_I18N_GRAPHVIZ_EXECUTABLE before starting Thonny. Removing the variable restores the embedded engine.