docs(journeydoc): bootstrap capture-driven user documentation#38
Merged
Conversation
Stand up a Docusaurus documentation site for OpenBuilt plus the
journeydoc (ADR-030) capture-driven tutorials scaffold:
- docs/ Docusaurus site adapted from the @conduction/docusaurus-preset
pattern — config, landing page, homepage features, custom CSS,
English-only locale, intro page, CNAME (openbuilt.conduction.nl).
- docs/tutorials/{user,admin}/ skeleton pages (8 user + 3 admin) from
the journeydoc tutorial-page template — TODOs for the human author.
- tests/e2e/docs-screenshots.spec.ts capture-spec stub with one empty
test() per story (see /journeydoc-add-story).
- playwright.config.ts: add the opt-in `docs-capture` project and
exclude the capture spec from the default `chromium` project.
Existing projects/specs untouched.
- .github/workflows/documentation.yml: switch cname to
openbuilt.conduction.nl and trigger on development + documentation.
Contributor
Quality Report — ConductionNL/openbuilt @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| composer | ✅ | ✅ 100/100 | |||
| npm | ✅ | ✅ 432/432 | |||
| PHPUnit | ✅ | ||||
| Newman | ❌ | ||||
| Playwright | ⏭️ |
Coverage: 0% (0/19 statements)
Quality workflow — 2026-05-12 14:01 UTC
Download the full PDF report from the workflow artifacts.
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.
Summary
Stands up a Docusaurus documentation site for OpenBuilt and drops the journeydoc (ADR-030) capture-driven tutorials scaffold. Adapted from the working
pipelinq/docs/reference + the journeydoc templates inhydra/templates/journeydoc/.What landed
Docusaurus site (
docs/)docusaurus.config.js— built on@conduction/docusaurus-preset;title: OpenBuilt,url: https://openbuilt.conduction.nl,baseUrl: /,organizationName: ConductionNL,projectName: openbuilt,editUrl→ConductionNL/openbuilt/tree/main/docs/.i18n.locales: ['en']only (Dutch omitted until translated markdown exists — ADR-030 comment explains why).onBrokenMarkdownImages: 'warn'so the build survives a fresh checkout without screenshots.package.json(name: openbuilt-docs),package-lock.json(name field updated),sidebars.js(autogenerated sidebar).src/pages/index.js— landing page using the brand<DetailHero>+<WidgetShelf>with OpenBuilt-specific copy and three mock widget panels (template gallery, schema designer, version snapshots).src/components/HomepageFeatures/index.js,src/css/custom.css, module CSS — adapted.intro.md— OpenBuilt overview landing doc.static/CNAME=openbuilt.conduction.nl;static/img/logo.svg;static/screenshots/tutorials/{user,admin}/.gitkeep.docs/integrator-guide.md,docs/openbuilt-rbac.md,docs/openbuilt-runtime.mdkept as-is (picked up by the autogenerated sidebar).Journeydoc tutorial skeletons (
docs/tutorials/)_category_.jsonfor the Tutorials root +user/+admin/tracks.01-first-launch,02-create-from-template,03-design-schema,04-design-page,05-connect-data,06-preview-app,07-version-snapshots,08-export-app.01-rbac,02-template-catalogue,03-admin-settings.tutorial-page.md.templatewith{{POSITION}}/{{TITLE}}/{{DESCRIPTION}}pre-filled and body sections as{{TODO: …}}for the human author //journeydoc-add-story.Capture spec (
tests/e2e/docs-screenshots.spec.ts)shoot()helper and one emptytest('UN <slug>', …)per story (11 total) — each a/* TODO: see /journeydoc-add-story */stub.playwright.config.tssplicedocs-captureproject (testMatch: /docs-screenshots\.spec\.ts$/, 1280×800, 90 s timeout).testIgnore: ['**/docs-screenshots.spec.ts']to the existingchromiumproject so PR pipelines don't reshoot.CI wiring (
.github/workflows/documentation.yml)cname:switched fromopenbuilt.app→openbuilt.conduction.nl(ADR-030 canonical domain).[development, documentation](wasdocumentationonly).Notes / caveats
@conduction/docusaurus-presetwhich isn't installed in this workspace, so the site build was not verified locally. Worth anpm ci --legacy-peer-deps && npm run buildindocs/before merge.package-lock.jsonis pipelinq's lock with thenamefield changed (deps are identical). Regenerate withnpm installindocs/if a clean lock is preferred.test()blocks are intentionally empty stubs — they'll fail/skip until filled via/journeydoc-add-story+/journeydoc-instrument.docs/*.mdreference pages contain relative links like../openspec/changes/that will surface as broken-link warnings;onBrokenLinks: 'warn'(preset default) keeps the build green.Next steps (post-merge)
docs/tutorials/{user,admin}/*.md— use/journeydoc-add-story <track> "<title>"./journeydoc-instrument <vue-file>on capture-relevant components to add stabledata-testids.npx playwright test --project docs-captureto populate screenshots.openbuilt.conduction.nl→conductionnl.github.ioand enable HTTPS in GitHub Pages settings.