Skip to content

Conversation

@ashishmohapatra240
Copy link

@ashishmohapatra240 ashishmohapatra240 commented Sep 6, 2025

Description

Improved the Pricing Card and Comparison components for better user experience:

  • Added cursor-pointer to buttons for consistency in the pricing page and Get Verified badge.
  • Updated the PRO features list.

Fixes #2018


Type of Change

Please delete options that are not relevant.

  • [✅] 🐛 Bug fix (non-breaking change which fixes an issue)
  • [✅] 🎨 UI/UX improvement

Areas Affected

Please check all that apply:

  • [✅] User Interface/Experience

Testing Done

Describe the tests you've done:

  • [✅] Manual testing performed

Checklist

  • [✅] I have read the CONTRIBUTING document
  • [✅] My code follows the project's style guidelines
  • [✅] I have performed a self-review of my code
  • [✅] My changes generate no new warnings

Screenshots/Recordings

Before

image

After (Added content accoring to the content, we get on clicking GET VERIFIED Badge)

image

Before

image

After (Did this across different cards in the pricing page and for the Get Verified Badge)

image

By submitting this pull request, I confirm that my contribution is made under the terms of the project's license.


Summary by cubic

Improved the pricing page UX by making all CTAs clearly clickable and aligning interactions across components. Updated the Pro plan features to include priority support and access to the private Discord community.

  • UI/UX
    • Added cursor-pointer to pricing/comparison buttons and the NavUser “Get verified” control.
    • Extended Pro features: “Priority customer support” and “Access to private Discord community.”

Summary by CodeRabbit

  • New Features
    • Pro plan now highlights two additional benefits on the pricing page: Priority customer support and Access to a private Discord community.
  • Style
    • Improved cursor feedback (pointer) on key buttons for clearer interactivity:
      • Pricing: Free “Get Started,” Zero Pro “Start 7‑day free trial,” Enterprise “Contact us.”
      • Navigation: “Get verified” button.
    • No changes to behavior or navigation; visual/UX update only.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 6, 2025

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Adds cursor-pointer to various buttons in pricing and nav components. Updates the Pro tier feature list by adding two items. No logic or API changes.

Changes

Cohort / File(s) Summary
Pointer cursor tweaks
apps/mail/components/pricing/comparision.tsx, apps/mail/components/pricing/pricing-card.tsx, apps/mail/components/ui/nav-user.tsx
Added cursor-pointer to Free/Pro/Enterprise pricing buttons and the “Get verified” button; no logic changes.
Pro features list update
apps/mail/components/pricing/pricing-card.tsx
Added two Pro features: “Priority customer support” and “Access to private Discord community.”

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Assessment against linked issues

Objective Addressed Explanation
Add cursor-pointer to non-center pricing buttons [#2018]
Add missing two Pro features to list [#2018]
Fix GET VERIFIED badge interaction/state consistency [#2018] Only cursor style added; unclear if click behavior/state alignment was required.
Add strikethrough price display [#2018] No pricing display change present.

Possibly related PRs

Suggested labels

design, content

Suggested reviewers

  • MrgSub
  • nizzyabi
  • ahmetskilinc

Poem

Clicks now glide with pointer might,
Pro gains perks—quite out of sight.
The badge says “verify,” bold and clear,
Prices await their strikethrough gear.
Small tweaks today, starship speed tomorrow—
UI aligned, reducing user sorrow. 🚀

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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.

@coderabbitai coderabbitai bot added content design Improvements & changes to design & UX labels Sep 6, 2025
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: 2

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (4)
apps/mail/components/pricing/comparision.tsx (1)

281-285: Copy nit: “7‑day” needs a hyphen.

Micro, but polish matters.

-                    Start 7 day free trial
+                    Start 7-day free trial
apps/mail/components/pricing/pricing-card.tsx (3)

286-293: Rename deprecated shadow utility (Enterprise CTA).

Mirror the same change here.

-            className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
+            className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow-sm shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"

246-250: Copy nit: hyphenate “7‑day”.

Same polish as comparison table.

-                Start 7 day free trial
+                Start 7-day free trial

216-225: Slash through original monthly price in annual mode
In apps/mail/components/pricing/pricing-card.tsx (lines 216–225), render <span className="text-white/40 line-through">${monthlyPrice}</span> immediately before the discounted ${annualPrice} when isAnnual is true, matching the design brief and Issue #2018.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 64c5480 and a7e094b.

📒 Files selected for processing (3)
  • apps/mail/components/pricing/comparision.tsx (2 hunks)
  • apps/mail/components/pricing/pricing-card.tsx (3 hunks)
  • apps/mail/components/ui/nav-user.tsx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (4)
**/*.{css,js,ts,jsx,tsx,mdx}

📄 CodeRabbit inference engine (.cursor/rules/tailwind-css-v4.mdc)

**/*.{css,js,ts,jsx,tsx,mdx}: Chain variants together for composable variants (e.g., group-has-data-potato:opacity-100).
Use new variants such as starting, not-*, inert, nth-*, in-*, open (for :popover-open), and ** for all descendants.
Do not use deprecated utilities like bg-opacity-*, text-opacity-*, border-opacity-*, and divide-opacity-*; use the new syntax (e.g., bg-black/50).
Use renamed utilities: shadow-sm is now shadow-xs, shadow is now shadow-sm, drop-shadow-sm is now drop-shadow-xs, drop-shadow is now drop-shadow-sm, blur-sm is now blur-xs, blur is now blur-sm, rounded-sm is now rounded-xs, rounded is now rounded-sm, outline-none is now outline-hidden.
Use bg-(--brand-color) syntax for CSS variables in arbitrary values instead of bg-[--brand-color].
Stacked variants now apply left-to-right instead of right-to-left.

Files:

  • apps/mail/components/ui/nav-user.tsx
  • apps/mail/components/pricing/comparision.tsx
  • apps/mail/components/pricing/pricing-card.tsx
**/*.{js,jsx,ts,tsx}

📄 CodeRabbit inference engine (AGENT.md)

**/*.{js,jsx,ts,tsx}: Use 2-space indentation
Use single quotes
Limit lines to 100 characters
Semicolons are required

Files:

  • apps/mail/components/ui/nav-user.tsx
  • apps/mail/components/pricing/comparision.tsx
  • apps/mail/components/pricing/pricing-card.tsx
**/*.{js,jsx,ts,tsx,css}

📄 CodeRabbit inference engine (AGENT.md)

Use Prettier with sort-imports and Tailwind plugins

Files:

  • apps/mail/components/ui/nav-user.tsx
  • apps/mail/components/pricing/comparision.tsx
  • apps/mail/components/pricing/pricing-card.tsx
**/*.{ts,tsx}

📄 CodeRabbit inference engine (AGENT.md)

Enable TypeScript strict mode

Files:

  • apps/mail/components/ui/nav-user.tsx
  • apps/mail/components/pricing/comparision.tsx
  • apps/mail/components/pricing/pricing-card.tsx
🧠 Learnings (1)
📚 Learning: 2025-05-07T16:55:46.513Z
Learnt from: danteissaias
PR: Mail-0/Zero#902
File: apps/mail/components/connection/add.tsx:77-77
Timestamp: 2025-05-07T16:55:46.513Z
Learning: For the "Upgrade" link in AddConnectionDialog, using a proper <button> element instead of a <span> with onClick is recognized as an accessibility improvement but was deferred as out of scope in PR #902 (CSS variables PR).

Applied to files:

  • apps/mail/components/pricing/comparision.tsx
⏰ 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). (1)
  • GitHub Check: cubic · AI code reviewer
🔇 Additional comments (3)
apps/mail/components/ui/nav-user.tsx (1)

650-656: Pointer affordance on “Get verified” — solid.

Matches the UX brief; clickable looks clickable. No further changes needed here.

apps/mail/components/pricing/comparision.tsx (1)

164-170: Fix gradient utility: use bg-gradient-to-l (Tailwind).

bg-linear-to-l isn’t a Tailwind class; gradient won’t render. Swap to bg-gradient-to-l.

Apply this diff:

-                className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
+                className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-gradient-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
⛔ Skipped due to learnings
Learnt from: CR
PR: Mail-0/Zero#0
File: .cursor/rules/tailwind-css-v4.mdc:0-0
Timestamp: 2025-08-03T20:42:04.207Z
Learning: Applies to **/*.css : Use new gradient utilities like `bg-linear-45`, `bg-conic`, and `bg-radial-[at_25%_25%]` in CSS.
Learnt from: CR
PR: Mail-0/Zero#0
File: .cursor/rules/tailwind-css-v4.mdc:0-0
Timestamp: 2025-08-03T20:42:04.207Z
Learning: Applies to **/*.{css,js,ts,jsx,tsx,mdx} : Do not use deprecated utilities like `bg-opacity-*`, `text-opacity-*`, `border-opacity-*`, and `divide-opacity-*`; use the new syntax (e.g., `bg-black/50`).
Learnt from: CR
PR: Mail-0/Zero#0
File: .cursor/rules/tailwind-css-v4.mdc:0-0
Timestamp: 2025-08-03T20:42:04.207Z
Learning: Applies to **/*.css : Use native CSS `layer` instead of Tailwind's custom implementation.
Learnt from: CR
PR: Mail-0/Zero#0
File: .cursor/rules/tailwind-css-v4.mdc:0-0
Timestamp: 2025-08-03T20:42:04.207Z
Learning: Applies to **/*.{css,js,ts,jsx,tsx,mdx} : Use `bg-(--brand-color)` syntax for CSS variables in arbitrary values instead of `bg-[--brand-color]`.
apps/mail/components/pricing/pricing-card.tsx (1)

24-26: PRO features additions — good alignment with issue #2018.

The two missing items are now present. Looks right.

Comment on lines 277 to 281
<button
onClick={handleUpgrade}
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10"
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
>
<div className="flex items-center justify-center">
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Same gradient bug on Pro CTA.

Repeat the fix for consistency.

-                className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
+                className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-gradient-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<button
onClick={handleUpgrade}
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10"
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
>
<div className="flex items-center justify-center">
<button
onClick={handleUpgrade}
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-gradient-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
>
<div className="flex items-center justify-center">
🧰 Tools
🪛 Biome (2.1.2)

[error] 277-280: Provide an explicit type prop for the button element.

The default type of a button is submit, which causes the submission of a form when placed inside a form element. This is likely not the behaviour that you want inside a React application.
Allowed button types are: submit, button or reset

(lint/a11y/useButtonType)

🤖 Prompt for AI Agents
In apps/mail/components/pricing/comparision.tsx around lines 277 to 281, the Pro
CTA button uses the incorrect gradient class "bg-linear-to-l"; update the button
to use the same correct Tailwind gradient class as the other CTAs (e.g.,
"bg-gradient-to-l from-white/0 to-white/10") so the visual gradient matches the
fix applied elsewhere, and ensure any related outline/padding classes remain
unchanged for consistent appearance.

Comment on lines 170 to 175
});
}
}}
className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343]"
className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
>
<div className="flex items-center justify-center gap-2.5 px-1">
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Rename deprecated shadow utility per guidelines.

shadowshadow-sm (old → new). Keeps us future-proof.

-            className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
+            className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow-sm shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
});
}
}}
className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343]"
className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
>
<div className="flex items-center justify-center gap-2.5 px-1">
});
}
}}
className="z-30 mt-auto inline-flex h-10 items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-[#2D2D2D] p-3 shadow-sm shadow-black/30 outline outline-1 -outline-offset-1 outline-[#434343] cursor-pointer"
>
<div className="flex items-center justify-center gap-2.5 px-1">
🧰 Tools
🪛 Biome (2.1.2)

[error] 162-175: Provide an explicit type prop for the button element.

The default type of a button is submit, which causes the submission of a form when placed inside a form element. This is likely not the behaviour that you want inside a React application.
Allowed button types are: submit, button or reset

(lint/a11y/useButtonType)

🤖 Prompt for AI Agents
In apps/mail/components/pricing/pricing-card.tsx around lines 170 to 175, the
className uses the deprecated Tailwind utility "shadow"; replace it with
"shadow-sm" to follow the new guideline and keep the rest of the classes (e.g.,
shadow-black/30) intact. Update the className string so it reads "... shadow-sm
shadow-black/30 outline ..." ensuring spacing and order remain valid.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 3 files


Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Ask questions if you need clarification on any suggestion

React with 👍 or 👎 to teach cubic. You can also tag @cubic-dev-ai to give feedback, ask questions, or re-run the review.

}
}}
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10"
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Sep 6, 2025

Choose a reason for hiding this comment

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

Replace the invalid Tailwind class "bg-linear-to-l" with "bg-gradient-to-l" so the gradient renders correctly on this CTA

Prompt for AI agents
Address the following comment on apps/mail/components/pricing/comparision.tsx at line 167:

<comment>Replace the invalid Tailwind class &quot;bg-linear-to-l&quot; with &quot;bg-gradient-to-l&quot; so the gradient renders correctly on this CTA</comment>

<file context>
@@ -164,7 +164,7 @@ export default function Comparision() {
                   }
                 }}
-                className=&quot;inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10&quot;
+                className=&quot;inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer&quot;
               &gt;
                 &lt;div className=&quot;flex items-center justify-center&quot;&gt;
</file context>
Suggested change
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-linear-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
className="inline-flex h-[40px] items-center justify-center gap-2.5 self-stretch overflow-hidden rounded-lg bg-gradient-to-l from-white/0 to-white/10 p-[3.5px] outline outline-1 -outline-offset-1 outline-white/10 cursor-pointer"
Fix with Cubic

@ashishmohapatra240
Copy link
Author

Added strikethrough price display

image

@Z3RO-O
Copy link

Z3RO-O commented Sep 6, 2025

@ashishmohapatra240 just wanted to know is this the standard procedure to create PR even without getting the issue assigned to anyone. I wanted to contribute but wasn't sure about creating a PR directly 😢

@ashishmohapatra240
Copy link
Author

@ashishmohapatra240 just wanted to know is this the standard procedure to create PR even without getting the issue assigned to anyone. I wanted to contribute but wasn't sure about creating a PR directly 😢

Hey! Thanks for asking, I went ahead and opened a PR directly since the issue wasn’t assigned. But yes, the usual flow is to get the issue assigned first so that there’s no duplication. For smaller fixes, creating a PR directly is usually fine. You should definitely feel free to contribute!

@Z3RO-O
Copy link

Z3RO-O commented Sep 7, 2025

Hey! Thanks for asking, I went ahead and opened a PR directly since the issue wasn’t assigned. But yes, the usual flow is to get the issue assigned first so that there’s no duplication. For smaller fixes, creating a PR directly is usually fine. You should definitely feel free to contribute!

Thanks, will contribute whatever possible 👍

@Z3RO-O
Copy link

Z3RO-O commented Sep 10, 2025

@ashishmohapatra240 just a suggestion instead of adding cursor-pointer for all buttons can you do this. This will fix all buttons if some others are left.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

content design Improvements & changes to design & UX

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Pricing Section design and features inconsistency

2 participants