Skip to content

landing wip#1597

Merged
yujonglee merged 1 commit intomainfrom
jj-branch-27
Oct 25, 2025
Merged

landing wip#1597
yujonglee merged 1 commit intomainfrom
jj-branch-27

Conversation

@ComputelessComputer
Copy link
Collaborator

No description provided.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 24, 2025

📝 Walkthrough

Walkthrough

Adds @hypr/ui workspace dependency to apps/web and framer-motion to packages/ui. Creates a new downloads route. Significantly redesigns the landing page with hero animation, feature sections, and call-to-action. Updates header and footer layout components. Removes unused shimmerButton and retroGrid animations from tailwind config.

Changes

Cohort / File(s) Summary
Landing Page & Routing
apps/web/src/routes/_view/index.tsx, apps/web/src/routes/_view/downloads.tsx, apps/web/src/routes/_view/route.tsx
Complete landing page redesign with multi-section layout including Typewriter animation, feature showcase, and CTA. New downloads route with platform-specific cards. Updated header with Sign up/Download actions and footer with copyright and links.
Dependency Management
apps/web/package.json, packages/ui/package.json
Added @hypr/ui workspace dependency to apps/web. Added framer-motion ^12.23.24 to packages/ui.
UI Configuration
packages/ui/tailwind.config.ts
Removed unused shimmerButton and retroGrid animation configurations from Tailwind extensions.

Sequence Diagram

sequenceDiagram
    participant User
    participant Router
    participant LayoutRoute
    participant LandingPage
    participant DownloadsPage

    User->>Router: Navigate to / or /downloads
    Router->>LayoutRoute: Render _view route layout
    LayoutRoute->>LayoutRoute: Render sticky Header
    
    alt Navigate to /
        LayoutRoute->>LandingPage: Render landing page
        LandingPage->>LandingPage: Initialize Typewriter animation
        LandingPage->>LandingPage: Render hero section
        LandingPage->>LandingPage: Render features section
        LandingPage->>LandingPage: Render CTA with DownloadButton
    else Navigate to /downloads
        LayoutRoute->>DownloadsPage: Render downloads page
        DownloadsPage->>DownloadsPage: Render platform cards (macOS, Windows, Linux)
        DownloadsPage->>User: Display download links
    end
    
    LayoutRoute->>LayoutRoute: Render Footer
    LayoutRoute->>User: Display complete page
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

The changes span multiple files with mixed complexity: dependency updates are straightforward, the new downloads route is a simple component, but the landing page redesign (index.tsx) involves significant layout refactoring with new animations and component restructuring. The layout route updates are moderate in scope. While mostly UI/styling-focused, the heterogeneous nature of changes across different files requires focused review of each section.

Possibly related PRs

  • New bundle: left sidebar 3 tabs #1542: Moves UI components into the ui package and updates imports to use @hypr/ui, directly complementing this PR's introduction of the workspace dependency.

Suggested reviewers

  • yujonglee

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings, 1 inconclusive)
Check name Status Explanation Resolution
Description Check ⚠️ Warning No pull request description was provided by the author. The description section is empty and contains no information about the changes in this pull request. Since the check requires the description to be related to the changeset in some way, an empty description fails to satisfy this requirement and provides no context for reviewers about the intent or scope of the modifications.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
Title Check ❓ Inconclusive The title "landing wip" uses "wip" (work in progress), which is a non-descriptive, generic term that does not convey meaningful information about the specific changes being made. While the word "landing" does reference landing page changes that are present in the changeset, the title lacks clarity and specificity about what is actually being implemented. The term "wip" is too vague and informal, similar to terms like "misc updates" or "stuff," making it inconclusive whether this adequately summarizes the scope of the changes including the new downloads page, component refactors, and dependency updates.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch jj-branch-27

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3800c4f and 032f5ac.

⛔ Files ignored due to path filters (3)
  • apps/web/src/routeTree.gen.ts is excluded by !**/*.gen.ts
  • packages/ui/src/components/ui/typewriter.tsx is excluded by !packages/ui/src/components/ui/**
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (6)
  • apps/web/package.json (1 hunks)
  • apps/web/src/routes/_view/downloads.tsx (1 hunks)
  • apps/web/src/routes/_view/index.tsx (2 hunks)
  • apps/web/src/routes/_view/route.tsx (1 hunks)
  • packages/ui/package.json (1 hunks)
  • packages/ui/tailwind.config.ts (0 hunks)
💤 Files with no reviewable changes (1)
  • packages/ui/tailwind.config.ts
🧰 Additional context used
🧬 Code graph analysis (2)
apps/web/src/routes/_view/downloads.tsx (2)
apps/web/src/routes/_view/index.tsx (1)
  • Route (8-10)
apps/web/src/routes/_view/route.tsx (1)
  • Route (3-5)
apps/web/src/routes/_view/index.tsx (2)
apps/web/src/routes/_view/downloads.tsx (1)
  • Route (3-5)
packages/utils/src/cn.ts (1)
  • cn (20-22)
🪛 Biome (2.1.2)
apps/web/src/routes/_view/index.tsx

[error] 40-40: Avoid using target="_blank" without rel="noopener" or rel="noreferrer".

Opening external links in new tabs without rel="noopener" is a security risk. See the explanation for more details.
Safe fix: Add the rel="noopener" attribute.

(lint/security/noBlankTarget)

🔇 Additional comments (3)
apps/web/package.json (1)

13-13: LGTM!

The workspace dependency addition aligns with the UI component usage in the landing page redesign.

apps/web/src/routes/_view/index.tsx (1)

22-28: Verify Typewriter component usage and animation configuration.

The Typewriter component is used with specific timing parameters. Ensure the component handles the array cycling correctly and that the animation doesn't interfere with the page load performance.

The implementation looks good, but please verify:

  1. The Typewriter component properly cycles through all three phrases
  2. The animation doesn't cause layout shifts or flashing on initial render
  3. The component is accessible (screen readers handle it appropriately)
packages/ui/package.json (1)

43-45: Both animation libraries are actively used—confirm if consolidation is desired.

The codebase uses both framer-motion and motion:

  • framer-motion (line 43): Used in typewriter.tsx for simple motion animations
  • motion (line 45): Used in progressive-blur.tsx and text-animate.tsx via motion/react imports for more complex animations

Both packages serve actual purposes in the code, so this is not a case of unused dependencies. However, the dual-library approach does introduce complexity. If consolidating to a single animation library is feasible, that would reduce bundle size and maintenance overhead. Verify whether this architectural split is intentional or if migrating components to use a single library would be beneficial.

@yujonglee yujonglee merged commit 5940c98 into main Oct 25, 2025
20 checks passed
@yujonglee yujonglee deleted the jj-branch-27 branch October 25, 2025 00:48
This was referenced Oct 25, 2025
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.

2 participants