Skip to content

Add hover and color styles to “Apply to GSoC with AOSSIE” button#582

Open
Abhishekmaurya12367 wants to merge 3 commits intoAOSSIE-Org:mainfrom
Abhishekmaurya12367:style/apply-button-hover
Open

Add hover and color styles to “Apply to GSoC with AOSSIE” button#582
Abhishekmaurya12367 wants to merge 3 commits intoAOSSIE-Org:mainfrom
Abhishekmaurya12367:style/apply-button-hover

Conversation

@Abhishekmaurya12367
Copy link

@Abhishekmaurya12367 Abhishekmaurya12367 commented Feb 17, 2026

Updated the “Apply to GSoC with AOSSIE” button styling to add a clear brand color and a visible hover state (including dark mode).
Improved accessibility by adding a focus-visible ring so keyboard users can see the button focus clearly.

Summary by CodeRabbit

  • Style
    • Refined Apply button and “View 2024 Idea List” button styling for improved visuals, spacing, dark-mode support, and interactive states.
  • New Features
    • Replaced Twitter branding with X (Twitter) across footer and site links, including an updated X icon and improved accessibility labels.

Abhishekmaurya12367 and others added 2 commits February 3, 2026 20:32
Make Apply to GSoC with AOSSIE CTA more interactive with a clear hover state and improved focus-visible styling.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai
Copy link

coderabbitai bot commented Feb 17, 2026

📝 Walkthrough

Walkthrough

Replaces FontAwesome Twitter icon with a new XIcon SVG component across pages and footer; updates aria-labels. Separately, updates Apply/View button anchor styling in Banner.jsx and ideas page to a richer set of Tailwind classes (colors, spacing, shadows, ring, hover/focus, dark-mode variants).

Changes

Cohort / File(s) Summary
New Icon Component
src/components/XIcon.jsx
Adds XIcon React component that renders an accessible SVG (accepts className, uses currentColor).
Icon Usage Replaced
src/components/Footer.jsx, src/pages/index.jsx
Removes FontAwesome faTwitter import/usage and replaces it with XIcon; updates aria-labels to "Follow on X (Twitter)".
Button Styling Updates
src/components/Banner.jsx, src/pages/ideas/index.jsx
Replaces previous compact/dark button classes with expanded Tailwind class lists for inline-flex layout, explicit colors, shadows, rings, hover/focus states, and dark-mode variants.
Manifest Note
package.json
Manifest file listed as changed in summary (lines changed reported).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐇 I swapped a bird for a bold new X,
SVG wings that sparkle, handy and next.
Buttons now shimmer, ring, and glow—
Tailwind hops in, swift and slow.
Happy changes from this rabbit, who says "cheer-o!" 🎉

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the primary change in the main affected file (Banner.jsx), which updates the Apply button styling with hover states and color adjustments.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • 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.

Copy link

@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.

🧹 Nitpick comments (1)
src/components/Banner.jsx (1)

20-24: Remove unused group class and modernize Link usage.

The group utility on the <a> tag is unused — no child elements reference group-hover: or group-focus:, making it safe to remove.

Banner.jsx is the only file in the codebase using legacyBehavior. All other Link components apply className directly to the Link element (the modern Next.js 14 pattern). Modernize this to match the project convention by removing legacyBehavior and applying styles directly to <Link>:

Proposed change
-              <Link href="/apply" legacyBehavior>
-                <a className="group relative inline-flex items-center overflow-hidden rounded-lg bg-white px-8 py-3 font-mono font-semibold text-[`#00843D`] shadow-sm ring-1 ring-black/10 transition hover:bg-[`#006b31`] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-offset-2 focus-visible:ring-offset-[`#00843D`] dark:bg-black dark:text-yellow-400 dark:ring-white/15 dark:hover:bg-white dark:hover:text-black dark:focus-visible:ring-black dark:focus-visible:ring-offset-2 dark:focus-visible:ring-offset-yellow-400">
+              <Link href="/apply" className="relative inline-flex items-center overflow-hidden rounded-lg bg-white px-8 py-3 font-mono font-semibold text-[`#00843D`] shadow-sm ring-1 ring-black/10 transition hover:bg-[`#006b31`] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-offset-2 focus-visible:ring-offset-[`#00843D`] dark:bg-black dark:text-yellow-400 dark:ring-white/15 dark:hover:bg-white dark:hover:text-black dark:focus-visible:ring-black dark:focus-visible:ring-offset-2 dark:focus-visible:ring-offset-yellow-400">
                   Apply to GSoC with AOSSIE
-                </a>
               </Link>
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/components/Banner.jsx` around lines 20 - 24, Remove the unused "group"
utility and modernize Next.js Link usage in the Banner component: delete
legacyBehavior on the Link, move the className from the inner <a> to the Link
itself, and remove the now-unnecessary inner <a> so Link renders the text node
directly (keep the same class string and children "Apply to GSoC with AOSSIE");
update the JSX in the Banner component accordingly so there is a single Link
element with the className and no legacy <a>.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@src/components/Banner.jsx`:
- Around line 20-24: Remove the unused "group" utility and modernize Next.js
Link usage in the Banner component: delete legacyBehavior on the Link, move the
className from the inner <a> to the Link itself, and remove the now-unnecessary
inner <a> so Link renders the text node directly (keep the same class string and
children "Apply to GSoC with AOSSIE"); update the JSX in the Banner component
accordingly so there is a single Link element with the className and no legacy
<a>.

Copy link

@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: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@src/pages/ideas/index.jsx`:
- Around line 122-129: The Link component rendering "View 2024 Idea List" uses
the wrong green (`#00843D`) and contains leftover classes; update its className to
use the page brand token (text-green-600 or hex `#3c982c`) so it matches the card
borders/title/"Know more" button, and remove the unnecessary utility classes
"group" and "order-2" from that Link since no group-hover or ordering is used;
ensure the hover/focus color utilities are adjusted to the chosen brand token as
well (locate the Link element in the JSX to apply these changes).

Comment on lines 122 to 129
<Link
className="group order-2 mx-auto items-center overflow-hidden rounded-lg bg-zinc-800 px-8 py-3 text-white focus:outline-none dark:bg-white dark:text-black"
className="group order-2 mx-auto inline-flex items-center overflow-hidden rounded-lg bg-white px-8 py-3 font-mono font-semibold text-[#00843D] shadow-sm ring-1 ring-black/10 transition hover:bg-[#00843D] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#00843D] focus-visible:ring-offset-2 dark:bg-black dark:text-yellow-400 dark:ring-white/15 dark:hover:bg-yellow-400 dark:hover:text-black dark:focus-visible:ring-yellow-400 dark:focus-visible:ring-offset-2 dark:focus-visible:ring-offset-black"
href="/ideas/2024"
>
<span className="text-center font-mono font-semibold">
<span className="text-center">
View 2024 Idea List
</span>
</Link>
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Inconsistent brand green: #00843D vs #3c982c used elsewhere on this page.

The card borders (Line 22), title text (Line 35), and "Know more" button (Line 62) all use #3c982c / text-green-600, but this button introduces #00843D. This creates a visible colour mismatch on the same page. Align to one brand token.

Also, group and order-2 appear to be copy-paste leftovers from Banner.jsxgroup is unused (no child uses group-hover: etc.) and order-2 has no effect since this link is the only child in its wrapper.

Suggested cleanup
 <Link
-  className="group order-2 mx-auto inline-flex items-center overflow-hidden rounded-lg bg-white px-8 py-3 font-mono font-semibold text-[`#00843D`] shadow-sm ring-1 ring-black/10 transition hover:bg-[`#00843D`] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[`#00843D`] focus-visible:ring-offset-2 dark:bg-black dark:text-yellow-400 dark:ring-white/15 dark:hover:bg-yellow-400 dark:hover:text-black dark:focus-visible:ring-yellow-400 dark:focus-visible:ring-offset-2 dark:focus-visible:ring-offset-black"
+  className="mx-auto inline-flex items-center overflow-hidden rounded-lg bg-white px-8 py-3 font-mono font-semibold text-[`#3c982c`] shadow-sm ring-1 ring-black/10 transition hover:bg-[`#3c982c`] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[`#3c982c`] focus-visible:ring-offset-2 dark:bg-black dark:text-yellow-400 dark:ring-white/15 dark:hover:bg-yellow-400 dark:hover:text-black dark:focus-visible:ring-yellow-400 dark:focus-visible:ring-offset-2 dark:focus-visible:ring-offset-black"
   href="/ideas/2024"
 >
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/pages/ideas/index.jsx` around lines 122 - 129, The Link component
rendering "View 2024 Idea List" uses the wrong green (`#00843D`) and contains
leftover classes; update its className to use the page brand token
(text-green-600 or hex `#3c982c`) so it matches the card borders/title/"Know more"
button, and remove the unnecessary utility classes "group" and "order-2" from
that Link since no group-hover or ordering is used; ensure the hover/focus color
utilities are adjusted to the chosen brand token as well (locate the Link
element in the JSX to apply these changes).

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.

1 participant

Comments