Skip to content

docs: documentation site built with Angular SSR, deployed to GitHub Pages - #297

Merged
ChristopherPHolder merged 7 commits into
mainfrom
f/angular-ssr-github-pages-docs-7e165c
Oct 28, 2026
Merged

ChristopherPHolder merged 7 commits into
mainfrom
f/angular-ssr-github-pages-docs-7e165c

Conversation

@ChristopherPHolder

@ChristopherPHolder ChristopherPHolder commented Oct 24, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Adds a proper documentation site for @push-based/user-flow under packages/docs, deployed to GitHub Pages at https://push-based.github.io/user-flow/.

  • Angular 22 application, prerendered with @angular/ssr (outputMode: static) so every route ships as static HTML with /user-flow/ as base href.
  • Content from the root README, packages/cli/docs/*.md and the Nx plugin README rewritten into 15 pages across five sections: getting started, CLI reference, writing user flows, integrations and resources. Facts were checked against the CLI source (option names, defaults, CLI modes, replay step types, the Nx target generator output).
  • Pages are Markdown files imported as text through the builder's loader option and rendered with marked + highlight.js. Fenced blocks support title="...", > [!TIP] style callouts render as boxes, in-app links are rewritten for the base href and routed client side.
  • Styling uses the push-based design tokens (Geist, violet accent, 4px grid) mapped to semantic roles with light and dark values. The site follows the system colour scheme and has a toggle in the header. Branding is the user-flow UFO mark in the header, hero and favicon.
  • Landing page, sidebar, per-page table of contents, previous/next links and a responsive mobile menu.
  • .github/workflows/docs.yml builds and deploys on pushes to main that touch the docs. Unknown routes fall back to the app shell through 404.html.

Setup after merge

The repository's Settings → Pages → Source must be set to GitHub Actions once, otherwise the deploy job cannot publish.

Local usage

npx nx serve docs            # dev server on http://localhost:4300
npx nx build docs            # prerendered output in dist/packages/docs/browser

Test plan

  • nx build docs prerenders 18 routes, no warnings
  • Production output served under /user-flow/ and checked in a browser: landing page, docs pages, sidebar, table of contents, callouts, tables, code highlighting, mobile menu
  • Light and dark mode: system preference without a stored choice, header toggle, stored choice surviving navigation
  • Hydration without console errors; in-content links navigate through the router
  • nx run-many -t build --projects=cli,nx-plugin still passes

Issues

Closes #223.

Related, not fully covered by this PR: #214 (configuration examples per level and budgets) and #228 (link serveCommand from the GitHub action docs).

Add a prerendered Angular application under packages/docs that turns the
content of the READMEs and packages/cli/docs into a structured site with
a landing page, sidebar navigation, per-page table of contents, callouts
and highlighted code blocks. Pages are Markdown files imported as text
and rendered with marked and highlight.js; every route is prerendered to
static HTML with /user-flow/ as base href.

The docs workflow builds the site and deploys it to GitHub Pages on
pushes to main that touch the docs.
…pages-docs-7e165c

# Conflicts:
#	.prettierignore
#	package-lock.json
#	package.json
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Use the push-based design system for tokens only. The header, hero and
favicon now use the user-flow UFO mark, and the PushBased logo is gone.
Semantic colour roles with light and dark values sit on top of the raw
token ramps; the site follows the system scheme and a header toggle
stores an explicit choice.
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Tables stack into labelled rows below phone-landscape width, the
measurement mode table fits desktop widths with inline icons, the table
of contents follows the section in view, cards and the hero adapt to
small screens, and a pass over the prose fixes hyphenation and wording.
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

The logo is inlined as SVG so the wordmark and mark recolour for dark
mode.
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

The 160px PNG blurred at hero size and on high-density screens. The
mark is now an inline SVG component whose outline and body colours
follow the theme, with an SVG favicon and PNG icons rendered from it.
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

Copy link
Copy Markdown

❗❗❗ report generated by this PR ❗❗❗

☕ Order Coffee ☕

Date/Time: 2026-10-24 20:34

Step Name Gather Mode Performance Accessibility Best Practices Seo Agentic Browsing
🧭 Navigate to coffee cart navigation 86 93 100 83 50
☕ Select coffee timespan 17/17 - 8/8 - -
✔ Coffee selected snapshot Ø 1/1 16/18 4/4 3/5 1/3
🛒 Checkout order timespan 19/19 - 8/8 - -
🧾 Order checked out snapshot Ø 1/1 19/20 4/4 3/5 1/3
💌 Submit order timespan 18/18 - 8/8 - -
📧 Order submitted snapshot Ø 1/1 20/22 4/4 3/5 1/3
🧭 Navigate to github navigation 85 92 100 83 50

@github-actions

Copy link
Copy Markdown

☕ Order Coffee ☕

Date/Time: 2026-10-24 20:34

Step Name Gather Mode Performance Accessibility Best Practices Seo Agentic Browsing
🧭 Navigate to coffee cart navigation 93 93 100 83 50
☕ Select coffee timespan 17/17 - 8/8 - -
✔ Coffee selected snapshot Ø 1/1 16/18 4/4 3/5 1/3
🛒 Checkout order timespan 19/19 - 8/8 - -
🧾 Order checked out snapshot Ø 1/1 19/20 4/4 3/5 1/3
💌 Submit order timespan 18/18 - 8/8 - -
📧 Order submitted snapshot Ø 1/1 20/22 4/4 3/5 1/3
🧭 Navigate to github navigation 97 92 100 83 50

@ChristopherPHolder
ChristopherPHolder merged commit 3ffd5ba into main Oct 28, 2026
4 checks passed
@ChristopherPHolder
ChristopherPHolder deleted the f/angular-ssr-github-pages-docs-7e165c branch October 28, 2026 14:56
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.

Create Docs site

1 participant