docs: migrate the documentation site into the monorepo - #939
Merged
Merged
Conversation
Refactor navbar and improve UI styling
chore: prep for v1.3.0
Button Change
Minor changes
feat(docs): Updated container info
The standalone docs repository carried a nested GitHub Actions workflow, a placeholder generator, an unreferenced sidebar fragment, and a stale copy of the Synkronus OpenAPI document (v1.0.3, behind synkronus/openapi/synkronus.yaml). None of them are used by the Docusaurus build. The root-level CNAME is not served by Docusaurus, so it moves into static/ where it is published.
- point organizationName/projectName at OpenDataEnsemble/ode - fix the edit URL, which pointed at a non-existent ode-docs directory - publish the custom question types guide that lived at the repo root and link it from Custom Extensions - update contributor docs: repo URLs, dev as the default branch, forum links - rewrite the site README for its new home and correct the versioning notes (versioning is disabled; versions.json is empty)
Adds .github/workflows/docs.yml, which validates the Docusaurus site on pull requests and deploys it to GitHub Pages from dev. Registers docs/ in the monorepo map and contributor guides.
The docs repository marked scripts/validate-docs.ts as executable because of its shebang, but it is only ever run through npm run test.
r0ssing
previously approved these changes
Sep 26, 2026
r0ssing
left a comment
Member
There was a problem hiding this comment.
Looks great! I suggest we update to deploy from 'main' (I added code suggestions where needed). If you agree, please feel free to accept those and merge the PR 🦖
Then we can update the repo settings together afterwards....
Co-authored-by: Emil Rossing <emil@rossing.org>
Co-authored-by: Emil Rossing <emil@rossing.org>
Co-authored-by: Emil Rossing <emil@rossing.org>
Co-authored-by: Emil Rossing <emil@rossing.org>
r0ssing
approved these changes
Sep 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Moves the Docusaurus site from the standalone
OpenDataEnsemble/docsrepository into this monorepo atdocs/, so documentation changes ship in the same PR as the code they describe.The docs repository history is preserved: the site was imported with
git subtree add --prefix=docs, so all 140 commits fromOpenDataEnsemble/docsare ancestors of this branch.git log HEAD~3^2 -- docusaurus.config.tswalks the original docs history.Layout
No URL changes
url,baseUrl: '/'androuteBasePath: '/docs'are unchanged, sohttps://opendataensemble.org/docs/...keeps working. The site stays an independent npm project (the rest of the monorepo uses pnpm);docs/package-lock.jsonis committed via a.gitignoreexception.Fixes made along the way
editUrlpointed at a non-existentode-docs/directory; it now resolves toode/tree/dev/docs/docs/<page>.projectName/organizationNamenow identifyOpenDataEnsemble/ode.docs/custom-question-types.mdbecomes a published page,docs/docs/guides/custom-question-types.md, linked from Custom Extensions.devas the default branch, community forum links, and the site README's incorrect versioning notes (versioning is disabled,versions.jsonis empty).create-placeholders.sh, an unreferencedsidebars-api.ts, and a stale copy of the Synkronus OpenAPI document.CNAMEmoved intostatic/, where Docusaurus actually publishes it.CI
.github/workflows/docs.ymlrunsnpm ci,npm run testandnpm run build(withonBrokenLinks: 'throw') on pull requests touchingdocs/**, and deploys to GitHub Pages on pushes todev. Locally verified: 104 pages build,build/CNAMEisopendataensemble.org,.nojekyllpresent.OpenDataEnsemble/docscurrently owns theopendataensemble.orgcustom domain, and only one Pages site can hold a domain. The deploy will fail until that domain is moved to this repository. Plan:Documentation CI & Deployworkflow.github.iofallback URL, proving the pipeline.opendataensemble.orgfromOpenDataEnsemble/docsand assign it toOpenDataEnsemble/ode.