Unify and elaborate documentation - #2
Conversation
Probably needs a lot of revising and redundancy removal.
There was a problem hiding this comment.
Pull request overview
This PR restructures the Sphinx documentation site to serve as a single entry point for the TRX ecosystem, adding new content pages (concepts/spec/design/history/software), bibliography support, and updated GitHub Pages deployment.
Changes:
- Added several new documentation pages covering TRX concepts, specification, design rationale, software integrations, and project history.
- Added bibliography/citation support (BibTeX + MyST) and wired citations into the docs.
- Updated build/deploy plumbing (Sphinx build dir, gitignore, and GitHub Pages workflow) and added a custom sidebar links template.
Reviewed changes
Copilot reviewed 13 out of 15 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| source/specification.md | Adds an initial TRX format specification page and example structure/code. |
| source/software.md | Adds a catalog of software that integrates TRX, with citations. |
| source/references.bib | Adds BibTeX references used by the documentation citations. |
| source/index.md | Replaces the old landing page with a MyST+Sphinx toctree-based index and citations. |
| source/history.md | Adds historical background and adoption notes, with citations/links. |
| source/design.md | Adds design rationale and trade-off explanations for TRX. |
| source/conf.py | Enables bibtex + additional MyST features and changes theme/sidebar configuration. |
| source/concepts.md | Adds an overview of TRX’s on-disk model and core concepts. |
| source/capsule.md | Removes the CodeOcean widget embed. |
| source/bib.md | Adds a generated bibliography page. |
| source/_templates/implementation-links.html | Adds a custom sidebar template linking to implementations/spec repo. |
| requirements.txt | Adds sphinxcontrib-bibtex dependency for citations. |
| Makefile | Changes Sphinx build output directory to _build. |
| .gitignore | Updates ignored build output path to _build/*. |
| .github/workflows/deploy.yml | Switches to GitHub Pages artifact + deploy-pages workflow structure. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - To get streamline lengths: append the total number of vertices to the end of | ||
| offsets and take the differences between consecutive elements | ||
| (`numpy.ediff1d`) |
There was a problem hiding this comment.
Hmm. Looks like maybe this is something that was added in the C++ implementation? It's not in the original spec.
There was a problem hiding this comment.
I remember @neurolabusc asking us to add this to the spec and I believe we did. trx-python follow this (as well as Rust and C++).
There was a problem hiding this comment.
I don't see it, so I will post an issue on the spec repo to implement this.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|
That's amazing ! I have general comments about the presentation (but the content seems great !)
|
|
Also for the Software section, I would add to the top as a disclaimer that not all software have the same functionallities and integration. We can assure that it load and save, but it is possible that information related to the data_per_* are not used or that complex operation (lazy loading or saving, advanced slicing, etc.) are not implemented in some language. Also I would add the following (to show proof of life): (Cant find any reference to TRX in Trekker, can't tell I know where it is in QSIPrep & QSIRecon (is it a default, do they export BIDS-Like and picked TRX as output?, I think these should be clarifiied) |
Added in 987c936
Added in 3de2569
Arguably, these are not external links. They are all within the tee-ar-ex.github.io namespace. This is also responsive to reviews that we received that requested something that is more unified across all the implementations. This way, they are all part of one big site. I have also made it so that regardless of which implementation you are reading, when you click on the logo in the top left you land in the main tee-ar-ex.github.io website.
Done in b98001c
Added in 23abf40
This should be fixed when tee-ar-ex/trx-cpp#51 is merged.
Let's do that separately.
Added in d0d0e07 |
|
Added links to PRs in dcd7d9b |
|
I think this is ready to go @frheault! But let me know if you see anything that needs fixing. |

This site will eventually be the one entry point into the ecosystem and will aggregate language-agnostic descriptions of the specification, and explanations, a bit of history of the format and a roadmap for the future.