Developer Notes¶
Documentation notice
This documentation was generated with help from a large language model and has not been fully vetted by the developer. Verify critical details against the source code and current application behavior.
Repo structure¶
src/ewald/is the active package.src/ewald/ui/contains Qt windows and widgets.src/ewald/data/,src/ewald/io/,src/ewald/processing/contain core state, I/O, and workflow logic..github/workflows/contains CI and docs deployment.
How to run tests¶
From an activated EWALD environment:
bash
pytest
How to build docs¶
bash
python -m pip install -r docs/requirements.txt
mkdocs build
mkdocs serve
How to add a new UI tool¶
- Add the new tool module under
src/ewald/ui/. - Wire launch/close behavior into
src/ewald/ui/main_window.py. - Register signals so project state changes flow back into existing views.
- Add docs coverage (overview + tutorial if user-facing).
- Add regression test coverage where feasible.
How to add a new documentation page¶
- Follow the dedicated contributor guide:
add-new-documentation-page. - Add a
.mdfile underdocs/. - Add a short parent section in
mkdocs.yml. - Include:
- purpose
- prerequisites
- expected outcomes
- known limitations
- Include planned/experimental markers where needed.
Documentation style rules¶
- Follow style guide.
- Keep section names and feature names consistent with active UI names.