roadmap/update-feature-roadmap#2194
Conversation
✅ Deploy Preview for hyprnote-storybook ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for hyprnote ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
📝 WalkthroughWalkthroughThis PR reorganizes the product roadmap by adding 12 new feature and product roadmap entries (API, bot, daily-notes, extensions, floating-panel, hyprmail, hyprnote-hardware, memory, mobile, smartwatch, windows, workflows) while removing 3 outdated entries. The roadmap detail page component is refactored to consolidate status styling, adjust layout spacing, and update the GitHub issues section to use a responsive grid. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~15 minutes
Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ 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: 4
🧹 Nitpick comments (2)
apps/web/src/routes/_view/roadmap/$slug.tsx (1)
117-143: Consider extracting duplicate date formatting logic.The date formatting options are duplicated three times. Consider extracting to a constant or helper function to improve maintainability.
For example:
const dateFormatOptions: Intl.DateTimeFormatOptions = { year: "numeric", month: "short", day: "numeric", }; // Then use: new Date(item.updated).toLocaleDateString("en-US", dateFormatOptions)Or extract to a helper function:
const formatDate = (date: string) => new Date(date).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric", });apps/web/content/roadmap/memory.mdx (1)
1-8: Strong roadmap entry with thoughtful positioning.The entry clearly articulates the philosophy behind Hyprnote's memory approach—focusing on relevant, contextual information rather than random data.
One minor optional note: the static analysis tool suggests the word "deep" in "deep understanding" might be replaced with stronger language for emphasis, though the current phrasing is perfectly acceptable.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (16)
apps/web/content/roadmap/api.mdx(1 hunks)apps/web/content/roadmap/bot.mdx(1 hunks)apps/web/content/roadmap/daily-notes.mdx(1 hunks)apps/web/content/roadmap/extensions.mdx(1 hunks)apps/web/content/roadmap/floating-panel.mdx(1 hunks)apps/web/content/roadmap/hyprmail.mdx(1 hunks)apps/web/content/roadmap/hyprnote-hardware.mdx(1 hunks)apps/web/content/roadmap/memory.mdx(1 hunks)apps/web/content/roadmap/mobile-app.mdx(0 hunks)apps/web/content/roadmap/mobile.mdx(1 hunks)apps/web/content/roadmap/pdf-export.mdx(0 hunks)apps/web/content/roadmap/real-time-collaboration.mdx(0 hunks)apps/web/content/roadmap/smartwatch.mdx(1 hunks)apps/web/content/roadmap/windows.mdx(1 hunks)apps/web/content/roadmap/workflows.mdx(1 hunks)apps/web/src/routes/_view/roadmap/$slug.tsx(3 hunks)
💤 Files with no reviewable changes (3)
- apps/web/content/roadmap/mobile-app.mdx
- apps/web/content/roadmap/pdf-export.mdx
- apps/web/content/roadmap/real-time-collaboration.mdx
🧰 Additional context used
📓 Path-based instructions (1)
**/*.{ts,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
**/*.{ts,tsx}: Avoid creating a bunch of types/interfaces if they are not shared. Especially for function props, just inline them instead.
Never do manual state management for form/mutation. Use useForm (from tanstack-form) and useQuery/useMutation (from tanstack-query) instead for 99% of cases. Avoid patterns like setError.
If there are many classNames with conditional logic, usecn(import from@hypr/utils). It is similar toclsx. Always pass an array and split by logical grouping.
Usemotion/reactinstead offramer-motion.
Files:
apps/web/src/routes/_view/roadmap/$slug.tsx
🧠 Learnings (2)
📚 Learning: 2025-11-24T16:32:30.770Z
Learnt from: CR
Repo: fastrepl/hyprnote PR: 0
File: apps/web/content/changelog/AGENTS.md:0-0
Timestamp: 2025-11-24T16:32:30.770Z
Learning: Applies to apps/web/content/changelog/** : Only include desktop-related changes in the changelog when reading through commits and diffs
Applied to files:
apps/web/content/roadmap/windows.mdx
📚 Learning: 2025-11-24T16:32:29.314Z
Learnt from: CR
Repo: fastrepl/hyprnote PR: 0
File: apps/web/content/changelog/AGENTS.md:0-0
Timestamp: 2025-11-24T16:32:29.314Z
Learning: Applies to apps/web/content/changelog/** : Only keep desktop-related changes when maintaining changelog entries from commits and diffs
Applied to files:
apps/web/content/roadmap/windows.mdx
🧬 Code graph analysis (1)
apps/web/src/routes/_view/roadmap/$slug.tsx (2)
packages/utils/src/cn.ts (1)
cn(20-22)apps/storybook/stories/Button.stories.tsx (1)
Icon(72-77)
🪛 LanguageTool
apps/web/content/roadmap/extensions.mdx
[grammar] ~8-~8: Ensure spelling is correct
Context: ...nsion to display charts directly within Hyprnote during meetings.
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
apps/web/content/roadmap/memory.mdx
[style] ~8-~8: Consider a different adjective to strengthen your wording.
Context: ...yprnote gains more context, it builds a deep understanding of your daily and work li...
(DEEP_PROFOUND)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: Redirect rules - hyprnote
- GitHub Check: Header rules - hyprnote
- GitHub Check: Pages changed - hyprnote
- GitHub Check: ci
- GitHub Check: fmt
🔇 Additional comments (11)
apps/web/content/roadmap/bot.mdx (1)
1-8: LGTM! Clear roadmap entry.The bot feature is well-described with concrete use cases (double-booking, information gathering) and integration points (Slack). Front matter follows the established schema correctly.
apps/web/content/roadmap/extensions.mdx (1)
1-8: LGTM! Well-described extensibility vision.The extension system is clearly articulated with a familiar reference point (VS Code) and concrete use case (investment analyst charts). The static analysis hint about "Hyprnote" spelling is a false positive—it's the product name.
apps/web/content/roadmap/windows.mdx (1)
1-8: LGTM! Clear cross-platform expansion plan.The Windows and Linux roadmap entry is concise and clearly communicates the platform expansion goal.
apps/web/content/roadmap/mobile.mdx (1)
1-8: LGTM! Thoughtful platform differentiation.The mobile roadmap entry does an excellent job explaining the distinct use cases (conferences, in-person meetings) and how mobile complements other platforms rather than just duplicating functionality.
apps/web/content/roadmap/daily-notes.mdx (1)
1-8: LGTM! Comprehensive productivity feature.The Daily Notes feature is well-described with a clear mental model (Facebook timeline) and explains the value of aggregating multiple data sources into a unified view.
apps/web/content/roadmap/workflows.mdx (1)
1-8: LGTM! Clear automation feature differentiation.The Workflows entry effectively explains the distinction between webhooks (developer-focused) and workflows (visual, no-code), making the value proposition clear.
apps/web/content/roadmap/hyprnote-hardware.mdx (1)
1-8: LGTM! Innovative hardware vision.The hardware roadmap entry thoughtfully addresses the design challenge of non-intrusive ambient listening with multiple form factor explorations (e-ink tablet, pendant, ring, pen). The reasoning about social acceptability is particularly well-articulated.
apps/web/content/roadmap/floating-panel.mdx (1)
1-8: LGTM!Well-structured roadmap entry with clear frontmatter and a detailed description of the floating panel feature. The description effectively communicates the purpose, default behavior, customization options, and key UI elements.
apps/web/content/roadmap/smartwatch.mdx (1)
1-8: LGTM!Well-reasoned roadmap entry. The description effectively explains the strategic choice to integrate with existing smartwatch ecosystems rather than custom hardware, with good justification around daily usage, intrusiveness, and practical audio capture positioning.
apps/web/content/roadmap/hyprmail.mdx (1)
1-8: LGTM!Clear product roadmap entry with appropriate "product" label (distinct from features). The description effectively outlines Hyprmail's core value proposition as an inbox assistant, including integration points with Hyprnote and key capabilities like sorting, scheduling, and task extraction.
apps/web/content/roadmap/api.mdx (1)
1-8: LGTM!Well-articulated feature roadmap entry. The description clearly explains the API and webhooks functionality with concrete use cases (pre-meeting research, automated note distribution to external tools). The mention of MCP shows thoughtful integration strategy for bringing meeting context into external applications.
Overview