Skip to content

feat(cursor): add custom animated cursor for landing page#1296

Open
nishupr wants to merge 1 commit into
Priyanshu-byte-coder:mainfrom
nishupr:feat/custom-animated-cursor
Open

feat(cursor): add custom animated cursor for landing page#1296
nishupr wants to merge 1 commit into
Priyanshu-byte-coder:mainfrom
nishupr:feat/custom-animated-cursor

Conversation

@nishupr
Copy link
Copy Markdown
Contributor

@nishupr nishupr commented May 27, 2026

Fix #1162

Summary

Adds a custom animated cursor to the DevTrack landing page, replacing the default browser cursor with a purple/indigo themed one that matches the site's aesthetic.

Changes

  • Added src/components/CustomCursor.tsx — self-contained cursor component
  • Imported and rendered <CustomCursor /> in src/app/layout.tsx

Behavior

  • Inner dot — snaps instantly to pointer with a purple radial glow
  • Outer ring — trails behind the dot with a smooth lerp animation
  • Hover state — ring expands and fills with a faint purple tint when over buttons, links, and other interactive elements
  • Click state — dot shrinks and ring pulses on mousedown
  • Touch safe — detects pointer: coarse and disables itself on touch devices, native cursor is restored
  • No dependencies — pure React hooks + inline styles, no extra packages needed

Testing

  • Cursor visible on landing page
  • Ring expands on button/link hover
  • Dot shrinks on click
  • Native cursor hidden
  • No layout shift or performance issues
  • npm run lint && npm run type-check passed

@vercel
Copy link
Copy Markdown

vercel Bot commented May 27, 2026

Someone is attempting to deploy a commit to the PRIYANSHU DOSHI's projects Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions github-actions Bot added gssoc26 GSSoC 2026 contribution type:feature GSSoC type bonus: new feature labels May 27, 2026
@github-actions
Copy link
Copy Markdown

GSSoC Label Checklist 🏷️

@Priyanshu-byte-coder — please apply the appropriate labels before merging:

Difficulty (pick one):

  • level:beginner — 20 pts
  • level:intermediate — 35 pts
  • level:advanced — 55 pts
  • level:critical — 80 pts

Quality (optional):

  • quality:clean — ×1.2 multiplier
  • quality:exceptional — ×1.5 multiplier

Validation (required to score):

  • gssoc:approved — counts for points
  • gssoc:invalid / gssoc:spam / gssoc:ai-slop — does not score

Type labels (type:*) are auto-detected from files and title. Review and adjust if needed.
Points formula: (difficulty × quality_multiplier) + type_bonus

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

Labels

gssoc26 GSSoC 2026 contribution type:feature GSSoC type bonus: new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] add custom animated cursor for landing page

1 participant