docs(website): refresh site with AI workspace, docs section and improved download#33
Conversation
…ved download - Update meta description and hero subtitle to highlight AI workspace - Rename 'Plan Review Comments' feature to 'AI Workspace' with terminal chat mockup - Add 'Multi-language' to compact features grid (5th column) - Add #docs section with accordion: CLI, Voice to Text, AI Workspace - Add 'Docs' link to nav - Add Quick Install block with Homebrew (active) + Snap, Flatpak, winget (soon) - Split macOS download into Apple Silicon and Intel buttons - Add data-asset attributes to download buttons - Fetch direct download URLs from GitHub API in site.js with fallback - Add accordion interactivity for docs section - Add install copy buttons for Quick Install Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review infoConfiguration used: defaults Review profile: CHILL Plan: Pro 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThe PR updates the website with an AI Workspace terminal-chat mockup, adds an expandable Documentation section, introduces quick-install UI with copy buttons, and implements GitHub release-based download linking with OS/architecture asset selection. Changes
Sequence Diagram(s)sequenceDiagram
participant Browser
participant SiteJS as site.js
participant GitHub as GitHub API
participant DOM as Document
Browser->>SiteJS: page load (init)
SiteJS->>GitHub: GET /repos/.../releases/latest
GitHub-->>SiteJS: release JSON (assets list)
SiteJS->>SiteJS: map assets by data-asset keys (macos-arm, linux-deb, etc.)
SiteJS->>SiteJS: detect OS/arch
SiteJS->>DOM: update elements with data-asset attrs -> asset URLs
Browser->>DOM: user clicks .install-copy-btn
DOM->>SiteJS: copy handler invoked
SiteJS->>Browser: writeText(...) to Clipboard
SiteJS->>DOM: show temporary "copied" state
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
website/css/site.css (1)
983-987: Remove duplicated#docsscroll offset declaration.
scroll-margin-top: 56pxis already set for#docsat Line 84. Keeping it in two places makes future tweaks error-prone.♻️ Proposed cleanup
`#docs` { padding: 80px 0; border-top: 1px solid var(--border); - scroll-margin-top: 56px; }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@website/css/site.css` around lines 983 - 987, The CSS for the `#docs` selector duplicates scroll-margin-top: 56px; remove the duplicate declaration from this block (the one in the later `#docs` rule) and leave padding: 80px 0; and border-top: 1px solid var(--border); intact so the single authoritative scroll-margin-top remains where it was originally defined (the earlier `#docs` rule).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@website/index.html`:
- Around line 508-516: The accordion header button with class "docs-item-header"
and its panel div "docs-item-body" need ARIA associations: add an aria-expanded
attribute on the "docs-item-header" button, give each "docs-item-body" a unique
id, and add aria-controls on the button pointing to that id; ensure the JS that
toggles the accordion (where it updates the button state) also toggles
aria-expanded and keeps the aria-controls/id pairing consistent for the other
instances mentioned (lines around the other headers/panels). Use the existing
class names ("docs-item-header" and "docs-item-body") to locate elements and
wire the aria changes in the same toggle logic so expanded/collapsed state
remains synced.
In `@website/js/site.js`:
- Around line 137-142: The CTA logic in the ctaBtn handling (element id
'cta-download') uses assetKey and map but doesn't fallback when map[assetKey] is
missing, leaving the href pointing to '#download'; update the code that computes
assetKey and assigns ctaBtn.href so that if map[assetKey] is falsy it sets
ctaBtn.href to the releases URL (e.g. the project's releases page) instead of
leaving the default; apply the same fallback change to the other identical block
that updates the CTA (the second occurrence that also references ctaBtn,
assetKey and map) so both paths always resolve to either the direct asset or the
releases page.
- Around line 107-110: The click handler for elements matched by
'.install-copy-btn' assumes btn.closest('.install-option') and its
'.install-cmd' child exist, which can throw if markup changes; update the
handler in site.js to null-check the result of btn.closest('.install-option')
and the querySelector('.install-cmd') before reading textContent (or bail
out/notify the user), and only call navigator.clipboard.writeText(cmd) when cmd
is a non-empty string so the click flow never breaks if nodes are missing.
---
Nitpick comments:
In `@website/css/site.css`:
- Around line 983-987: The CSS for the `#docs` selector duplicates
scroll-margin-top: 56px; remove the duplicate declaration from this block (the
one in the later `#docs` rule) and leave padding: 80px 0; and border-top: 1px
solid var(--border); intact so the single authoritative scroll-margin-top
remains where it was originally defined (the earlier `#docs` rule).
- Add ARIA attributes to accordion: aria-expanded, aria-controls and panel ids (docs-cli, docs-whisper, docs-ai) with role=region + aria-labelledby - Sync aria-expanded state in JS accordion toggle handler - Guard install copy button handler against missing .install-option / .install-cmd nodes - Fix CTA download button fallback: always resolves to releases URL when asset map lookup fails or fetch throws Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
Test plan
Summary by CodeRabbit
New Features
Style