Feat: migrate marketing site to Docusaurus (rossoctl) with synced docs#88
Feat: migrate marketing site to Docusaurus (rossoctl) with synced docs#88Ibrahim2595 wants to merge 9 commits into
Conversation
Replace the hand-built static marketing site with the rossoctl Docusaurus site: ecosystem guide as the landing (/), plus a Docs section synced at build time from kagenti/kagenti:docs-temp/ (scripts/sync-docs.sh; docs/ is git-ignored). - Remove old static assets (index.html, style.css, script.js, img/, etc.). - Replace the Pages workflow (hugo.yaml -> deploy.yaml): npm ci -> sync-docs -> build -> upload build/. Triggers on push, the docs-temp-updated dispatch, a daily cron, and manual dispatch. - Config: serve at kagenti.github.io/.github/ (baseUrl /.github/); drop the Docs-temp plugin and navbar item. - Preserve org community-health files (profile/, .github/ISSUE_TEMPLATE/, reusable workflows, CLAUDE.md). Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
Add a version selector to the navbar (left, after Blog). Only the current "dev" docs exist today; selecting "dev" opens the Getting Started section. Label the current docs version "dev" so this can switch to the built-in docsVersionDropdown once v0.7 is cut. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
Incorporate the designer's landing mock and token spec: - Site-wide palette via Infima variables (page #f2f2f2/#000, borders #e0e0e0/#383838, text #000/#fff, brand red #ee0000 in both themes). - Footer inverts per theme (black in light, white in dark; red wordmark). - Landing: designer's hero wording, red Get started / Learn more CTAs, and "Open questions" + "Key capabilities" as numbered accordions (new src/components/Accordion). Removes the RossoCortex hero diagram. - Navbar: rename Docs -> Documentation, token colors, brand red title. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
- Constrain the landing content to ~672px (centered), per the mock. - Enlarge the hero body text to ~1.5rem to match the design. - Open questions: show a truncated one-line description preview when a row is collapsed (Key capabilities still hides it when collapsed), matching the prototype's accordion behavior. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
…esign - Navbar: drop the drop-shadow, keep a single light divider (#e0e0e0/#383838). - Nav links: regular weight (400), 16px — matching the mock (was semibold). - Accordion chevron: use the exact filled chevron glyph from the design. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
- Left-align the brand + doc links (drop the space-between + right copyright). - Footer links → Documentation, Quickstart, Architecture, Guides, Contributing (doc-nav, replacing the mock's llm-d template leftover). - Remove the copyright line and use the design's generous vertical padding. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
Add a custom navbar item (custom-gitHubStars) that fetches the repo's stargazers_count from the GitHub API client-side and renders "N stars" next to the GitHub icon. Cached in sessionStorage (1h) to avoid refetching; falls back to a plain "GitHub" label if offline or rate-limited. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
The live star count inherited the default navbar link size/weight (1rem / 400) while 'Join Slack' next to it uses 0.8rem / 500. Match the two so the right-side header items read as one consistent set. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
Expand 'Local development' into a run-and-test guide: prerequisites (Node 20+, npm — not yarn/pnpm), which repos to clone (this repo always; kagenti/kagenti only to preview unpushed doc edits), and the npm workflow to install, sync docs, run the dev server, and validate a production build. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: IBRAHIM IBRAHIM <66755652+Ibrahim2595@users.noreply.github.com>
pdettori
left a comment
There was a problem hiding this comment.
Clean, well-executed migration from the hand-built static site to a Docusaurus (rossoctl) site with a build-time docs sync from kagenti/kagenti.
Strengths
- New Pages workflow uses least-privilege permissions (
contents: read,pages: write,id-token: write). scripts/sync-docs.shis properly hardened:set -euo pipefail, quoted vars,mktemp+ trap cleanup, sparse blobless clone from a hardcoded trusted repo URL.GitHubStarscomponent fetches the public API without a token, caches with a TTL, and degrades gracefully to a plain "GitHub" label.- No risky client-side patterns (
dangerouslySetInnerHTML/eval/child_process), no secrets, lockfile committed for reproducible builds.
Two non-blocking findings inline (one suggestion, one nit).
Merge-time prerequisites (from the PR body, not code): set Pages source to "GitHub Actions"; merge kagenti/kagenti#2176 first (build pulls docs-temp/ + CONTRIBUTING.md); confirm the docs-temp-updated dispatch reaches this repo.
Reviewed areas: CI/Actions, Shell, TypeScript/Frontend, YAML/config, Docs. Author: MEMBER (maintainer). Commits: 9/9 signed-off. No .claude//.vscode/ changes.
Assisted-By: Claude Code
| path: 'contributing', | ||
| routeBasePath: 'contributing', | ||
| sidebarPath: './sidebarsContributing.ts', | ||
| editUrl: 'https://github.com/Ibrahim2595/rossoctl-website/tree/main/', |
There was a problem hiding this comment.
suggestion — This editUrl for the Contributing docs plugin points to Ibrahim2595/rossoctl-website, a personal fork that currently returns 404. That makes the "Edit this page" link on the Contributing page broken.
Since this content is synced from kagenti/kagenti:CONTRIBUTING.md (see scripts/sync-docs.sh), the edit link should point at the source of truth — e.g. https://github.com/kagenti/kagenti/blob/main/CONTRIBUTING.md — or be omitted entirely.
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v4 |
There was a problem hiding this comment.
nit — Actions here are pinned to major tags (@v4/@v5/@v3). These are first-party actions/* matching GitHub's own Pages deployment template, so the risk is low. For the org's shared .github repo, pinning to full commit SHAs is the hardening best practice — optional, not blocking.
|
To test this locally, I did cd ~/src/kagenti
gh pr checkout 2176 --repo kagenti/kagenti
cd ~/src/kagenti-githubpages
npm ci
SRC_REPO=~/src/kagenti npm run sync-docs
npm start |
Depends on #kagenti/kagenti#2176
Replace the hand-built static marketing site with the rossoctl Docusaurus site: ecosystem guide as the landing (/), plus a Docs section synced at build time from kagenti/kagenti:docs-temp/ (scripts/sync-docs.sh; docs/ is git-ignored).
build -> upload build/. Triggers on push, the docs-temp-updated dispatch, a daily cron, and manual dispatch.
Assisted-By: Claude (Anthropic AI) noreply@anthropic.com
Summary
Related issue(s)
(Optional) Testing Instructions
Fixes #