Skip to content

docs: move documentation under /docs with standard section names - #230

Merged
vishr merged 1 commit into
mainfrom
docs/url-structure
Oct 30, 2026
Merged

vishr merged 1 commit into
mainfrom
docs/url-structure

Conversation

@vishr

@vishr vishr commented Oct 30, 2026

Copy link
Copy Markdown
Member

What this changes

Documentation moves from the onebox.run root to /docs, matching labstack/fanout#399 and #402. Sections and generic page slugs use the names most common across 18 surveyed developer-tool docs sites.

Old New
/start/what-onebox-is /docs/get-started/overview
/start/{install,first-deploy,reading-it-back} /docs/get-started/… (same names)
/guides/add-a-database /docs/guides/databases
/guides/adopt-compose /docs/guides/compose
/guides/back-up-a-database /docs/guides/backups
/guides/deploy-through-a-jump-host /docs/guides/jump-host
/guides/handle-secrets /docs/guides/secrets
/guides/roll-back /docs/guides/rollback
/guides/run-migrations /docs/guides/migrations
/guides/schedule-a-job /docs/guides/cron-jobs
/guides/{eject,environment-variables,upgrade-to-onebox-names} /docs/guides/… (same names)
/reference/… (including fields/*) /docs/reference/… (same names)
/status/capabilities /docs/reference/capabilities
/explanation/… /docs/concepts/… (same names)
  • /docs is a new documentation home with the quickstart path and the four sections; the header Docs link points at it.
  • The site builds with build.format: "preserve", so Starlight's sidebar, previous/next and title links carry no .html. The route middleware still corrects the canonical.
  • ob-docgen writes reference pages to the new paths. The CLI's Docker and Compose install remedy (internal/app/prerequisites.go) now links to /docs/get-started/install.
  • Old URLs are not redirected. Released binaries print the old install URL until the next release.
  • Historical records under docs/decisions and docs/plans keep their original paths.

Why this is correct

  • check-docs-urls fails the site build if a docs page leaves /docs, lacks its Markdown export or llms.txt entry, or links to a .html path; a probe with an injected .html link was rejected.
  • check-canonical confirms canonical, og:url and the sitemap agree for 44 pages.
  • An audit of the built site found no broken internal links or anchors across 2,900 links, and no remaining reference to an old path in tracked files, Go strings, README or context7.json.

Effect on the safety envelope

None. Documentation URLs and one remedy link change; no runtime behaviour does.

Checklist

  • just check passes locally.
  • Tests cover the new behaviour, including the failure paths (check-docs-urls, Markdown conversion tests, docgen tests).
  • Generated documentation is current (just check verifies this).
  • I have accepted the CLA, or will when the bot asks on my first pull request.

Docs move from the onebox.run root to /docs, so the root can hold the
landing page. Sections use the names most common across developer-tool
docs: get-started, guides, reference, concepts. Generic guide slugs
become the common nouns (databases, backups, secrets, rollback,
migrations, cron-jobs, environment-variables), the capability matrix
moves from status/ into reference/, and /docs gets a documentation home.

The site builds with format "preserve", so Starlight's links carry no
.html; the route middleware still corrects the canonical, and
check-docs-urls fails the build on a .html link or a docs page without
its Markdown export or llms.txt entry. ob-docgen writes the reference
pages to the new paths, and the CLI's install remedy links to
/docs/get-started/install. Old URLs are not redirected.
@vishr
vishr merged commit 818534b into main Oct 30, 2026
6 checks passed
@vishr
vishr deleted the docs/url-structure branch October 30, 2026 12:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant