Feat/features section#406
Conversation
|
@Aryan-205 is attempting to deploy a commit to the AJEET PRATAP SINGH's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Warning Review limit reached
More reviews will be available in 10 minutes and 33 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughAdds a new "Explore Features" section to the pricing landing page consisting of a typed feature data catalog, two image display components ( ChangesExplore Features Section
Supporting Updates: Branding, Pricing Copy, and Validation
Sequence Diagram(s)sequenceDiagram
participant User
participant ExploreFeaturesDashboard
participant IntersectionObserver
participant AutoAdvanceTimer
participant ExploreFeaturesImagePreview
IntersectionObserver->>ExploreFeaturesDashboard: section enters viewport
ExploreFeaturesDashboard->>AutoAdvanceTimer: start interval (AUTO_ADVANCE_MS)
AutoAdvanceTimer->>ExploreFeaturesDashboard: tick → increment activeIndex
ExploreFeaturesDashboard->>ExploreFeaturesImagePreview: re-render with new feature (imageSrc, FeatureIcon, featureTitle)
User->>ExploreFeaturesDashboard: click sidebar button / prev / next
ExploreFeaturesDashboard->>AutoAdvanceTimer: clear interval (pause)
ExploreFeaturesDashboard->>ExploreFeaturesImagePreview: re-render with selected feature
ExploreFeaturesDashboard->>AutoAdvanceTimer: schedule resume after RESUME_AFTER_MS
IntersectionObserver->>ExploreFeaturesDashboard: section leaves viewport
ExploreFeaturesDashboard->>AutoAdvanceTimer: clear interval (pause)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 3❌ Failed checks (2 warnings, 1 inconclusive)
✅ Passed checks (2 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: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/web/src/components/features/explore-features-browser-mockup.tsx`:
- Around line 21-23: The imageError state remains true after an image failure,
causing subsequent valid imageSrc updates to still display the fallback. Add a
useEffect hook that monitors imageSrc as a dependency and resets imageError to
false whenever imageSrc changes, ensuring that new valid image sources are not
blocked by previous error states.
- Around line 27-77: Replace all hardcoded hex color values throughout the
ExploreFeaturesBrowserMockup component with design token Tailwind classes.
Specifically, replace instances like bg-[`#252525`], bg-[`#101010`], bg-[`#0a0a0a`],
border-[`#252525`], the hardcoded traffic light circle colors (bg-[`#ff5f57`],
bg-[`#febc2e`], bg-[`#28c840`]), and the radial gradient with rgba values with their
corresponding design token equivalents from the Tailwind system (such as
bg-surface-*, border-*, text-* classes). Ensure all color references throughout
the component consistently use design tokens instead of arbitrary hex values.
In `@apps/web/src/components/features/explore-features-dashboard.tsx`:
- Around line 161-284: Replace all hardcoded hex and rgb color values with
semantic token-based classes throughout the explore-features-dashboard
component. Specifically, convert hardcoded values like border-[`#252525`],
bg-[`#101010`], text-[`#d1d1d1`] in the container and sidebar sections to their
appropriate semantic token classes from the design system. Additionally, update
the motion animation color properties (the rgb values in the animate objects for
the icon and title spans within the map function that renders FEATURES_DATA) to
use semantic token values instead of hardcoded rgb expressions. Ensure all color
references in the header section, button hover states, and the scrollbar styling
use consistent semantic tokens rather than direct hex or rgb values.
In `@apps/web/src/components/features/features.tsx`:
- Around line 9-37: The decorative left and right rail divs are using inline
style objects with hardcoded hex values (`#252525`) for colors and patterns, which
violates the project's styling guidelines. Replace the inline style props on
both the left rail and right rail divs with Tailwind classes that use the
project's design tokens for colors. Extract the background pattern and border
styling into Tailwind utilities, ensuring the visual appearance remains the same
while adhering to the tokenized styling contract and avoiding hardcoded hex
values.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 896e41cb-d3d1-4ca5-b08d-3fd056126271
⛔ Files ignored due to path filters (2)
apps/web/public/assets/features/pro-preview.svgis excluded by!**/*.svgpnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (6)
apps/web/src/app/(main)/(landing)/page.tsxapps/web/src/components/features/explore-features-browser-mockup.tsxapps/web/src/components/features/explore-features-dashboard.tsxapps/web/src/components/features/explore-features-data.tsapps/web/src/components/features/features.tsxapps/web/tsconfig.json
|
@Aryan-205 nice work! two requests:
|
|
@Aryan-205 hey any update on this? |
|
yes, m working on this rn, will probably submit you the videos and images with the fixes in 1-2 hours, with that this would be finished as the UI is already complete |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/web/src/components/features/explore-features-dashboard.tsx`:
- Around line 172-176: The PrimaryButton component is incorrectly nested inside
a Link component, which violates HTML semantics and breaks accessibility for
keyboard and screen-reader users. Replace the Link wrapper with Next.js routing
by importing useRouter from next/navigation at the top of the
explore-features-dashboard.tsx component, then remove the outer Link element
from the code block around the PrimaryButton with the "/pricing" href, and
instead add an onClick handler to the PrimaryButton that calls
router.push("/pricing") to navigate programmatically.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: fd04b2c8-ef4b-4bf5-bedd-665bcf4b992f
⛔ Files ignored due to path filters (11)
apps/web/public/assets/features/10updates-n-opportunities.pngis excluded by!**/*.pngapps/web/public/assets/features/11prorefs.pngis excluded by!**/*.pngapps/web/public/assets/features/1onboardingcall.pngis excluded by!**/*.pngapps/web/public/assets/features/2community.pngis excluded by!**/*.pngapps/web/public/assets/features/3weeklysessions.pngis excluded by!**/*.pngapps/web/public/assets/features/4unlimitedqna.pngis excluded by!**/*.pngapps/web/public/assets/features/5promodules.pngis excluded by!**/*.pngapps/web/public/assets/features/6weeklycontests.pngis excluded by!**/*.pngapps/web/public/assets/features/7hand-pickedossprojects.pngis excluded by!**/*.pngapps/web/public/assets/features/8prorecordings.pngis excluded by!**/*.pngapps/web/public/assets/features/9pvtthreads.pngis excluded by!**/*.png
📒 Files selected for processing (5)
apps/web/src/components/features/explore-features-browser-mockup.tsxapps/web/src/components/features/explore-features-dashboard.tsxapps/web/src/components/features/explore-features-data.tsapps/web/src/components/features/explore-features-image-preview.tsxapps/web/src/components/features/features.tsx
🚧 Files skipped from review as they are similar to previous changes (2)
- apps/web/src/components/features/features.tsx
- apps/web/src/components/features/explore-features-browser-mockup.tsx
Screen.Recording.2026-06-21.at.3.17.41.PM.movscreen-recording-2026-06-21-at-31817-pm_3Yk4Ac0L.mp4 |
3906b16 to
07774e3
Compare
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
apps/web/src/app/(main)/(landing)/pricing/page.tsx (1)
2-14: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick winreorder imports to match project import groups.
this block mixes local imports with third-party/react imports. please group as: react → third-party → local components → utils → types.
as per coding guidelines: "organize imports in order: react → third-party → local components → utils → types."
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@apps/web/src/app/`(main)/(landing)/pricing/page.tsx around lines 2 - 14, The imports in this file are not organized according to the project guidelines. Reorganize the imports at the top of the pricing page file to follow this order: first React and React hooks (React, useEffect), then all third-party library imports (next/image, next/link, next/navigation, lucide-react icons, framer-motion, next/dynamic), followed by local component imports (Header, ShineBorder, PrimaryButton, Features), and finally utility/lib imports (trpc, formatApproxPlanPrice). Ensure each group is separated by a blank line for clarity.Source: Coding guidelines
apps/api/src/utils/avatar-validator.ts (1)
47-145: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick wintrim step comments to intent-level notes only
the new
// step ncomments mostly restate what the code already says. keep comments for rationale/tradeoffs (why), and drop procedural narration (what) to reduce noise.As per coding guidelines: "Avoid unnecessary comments; code should be self-documenting when possible" and "Use comments to explain 'why', not 'what'".
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@apps/api/src/utils/avatar-validator.ts` around lines 47 - 145, Remove the procedural step comments (Step 1 through Step 9) throughout the avatar validation function that merely restate what the code logic already expresses clearly. Keep only comments that explain the rationale or design decisions behind specific validation checks (such as why IP addresses are rejected or why certain hosts are allowed). The variable names, control flow, and error messages are sufficiently descriptive to make the code self-documenting without the step narration.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/api/src/utils/avatar-validator.ts`:
- Around line 101-114: The clearTimeout(timeoutId) call only executes when the
fetch succeeds, but if the fetch call throws an error, the timeout is never
cleared, causing timer accumulation. Wrap the fetch call in a try-finally block
where the try block contains the fetch request and the finally block contains
the clearTimeout(timeoutId) call. This ensures that regardless of whether the
fetch succeeds or throws an error, the timeout is always properly cleaned up.
---
Nitpick comments:
In `@apps/api/src/utils/avatar-validator.ts`:
- Around line 47-145: Remove the procedural step comments (Step 1 through Step
9) throughout the avatar validation function that merely restate what the code
logic already expresses clearly. Keep only comments that explain the rationale
or design decisions behind specific validation checks (such as why IP addresses
are rejected or why certain hosts are allowed). The variable names, control
flow, and error messages are sufficiently descriptive to make the code
self-documenting without the step narration.
In `@apps/web/src/app/`(main)/(landing)/pricing/page.tsx:
- Around line 2-14: The imports in this file are not organized according to the
project guidelines. Reorganize the imports at the top of the pricing page file
to follow this order: first React and React hooks (React, useEffect), then all
third-party library imports (next/image, next/link, next/navigation,
lucide-react icons, framer-motion, next/dynamic), followed by local component
imports (Header, ShineBorder, PrimaryButton, Features), and finally utility/lib
imports (trpc, formatApproxPlanPrice). Ensure each group is separated by a blank
line for clarity.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 2b7c30ef-79ae-4514-b877-25a6a2419668
⛔ Files ignored due to path filters (13)
apps/web/public/assets/features/10updates-n-opportunities.pngis excluded by!**/*.pngapps/web/public/assets/features/11prorefs.pngis excluded by!**/*.pngapps/web/public/assets/features/1onboardingcall.pngis excluded by!**/*.pngapps/web/public/assets/features/2community.pngis excluded by!**/*.pngapps/web/public/assets/features/3weeklysessions.pngis excluded by!**/*.pngapps/web/public/assets/features/4unlimitedqna.pngis excluded by!**/*.pngapps/web/public/assets/features/5promodules.pngis excluded by!**/*.pngapps/web/public/assets/features/6weeklycontests.pngis excluded by!**/*.pngapps/web/public/assets/features/7hand-pickedossprojects.pngis excluded by!**/*.pngapps/web/public/assets/features/8prorecordings.pngis excluded by!**/*.pngapps/web/public/assets/features/9pvtthreads.pngis excluded by!**/*.pngapps/web/public/assets/features/pro-preview.svgis excluded by!**/*.svgpnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (8)
apps/api/src/utils/avatar-validator.tsapps/web/src/app/(main)/(landing)/pricing/page.tsxapps/web/src/components/faq/faqData.tsapps/web/src/components/features/explore-features-browser-mockup.tsxapps/web/src/components/features/explore-features-dashboard.tsxapps/web/src/components/features/explore-features-data.tsapps/web/src/components/features/explore-features-image-preview.tsxapps/web/src/components/features/features.tsx
✅ Files skipped from review due to trivial changes (1)
- apps/web/src/components/faq/faqData.ts
🚧 Files skipped from review as they are similar to previous changes (4)
- apps/web/src/components/features/explore-features-browser-mockup.tsx
- apps/web/src/components/features/features.tsx
- apps/web/src/components/features/explore-features-image-preview.tsx
- apps/web/src/components/features/explore-features-dashboard.tsx
|
great work! @Aryan-205 pls share ur upi |
Conflict resolution: - pricing/page.tsx: kept the revamp (ours). main's single-card "investment" design + "shareholders invested"/"slots booked" counter is the page this branch replaces; the two are incompatible redesigns, not line-mergeable. - explore-features-* / features.tsx: took main's versions — they are the merged+polished superset (PR apsinghdev#406 + polish + img fix) of the commits cherry-picked here.
closes #403
Summary by CodeRabbit
New Features
Improvements