From 29f89469ab664a34a17f0c480d88b8e701122083 Mon Sep 17 00:00:00 2001 From: dhaanisi Date: Mon, 11 May 2026 16:30:00 +0530 Subject: [PATCH 1/2] feat: redesign UI with modern components, framer-motion animations, and improved theme styling --- src/App.tsx | 4 +- src/components/Features.tsx | 113 +++++++++---- src/components/Footer.tsx | 2 +- src/components/Hero.tsx | 94 ++++++++--- src/components/HowItWorks.tsx | 76 ++++++--- src/components/Navbar.tsx | 151 +++++++----------- src/index.css | 7 + src/pages/About/About.tsx | 6 +- .../ContributorProfile/ContributorProfile.tsx | 2 +- src/pages/Contributors/Contributors.tsx | 2 +- tailwind.config.js | 35 +++- 11 files changed, 314 insertions(+), 178 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index b00eba8..65aca8d 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -13,7 +13,7 @@ function App() { -
+
@@ -25,7 +25,7 @@ function App() { gutter={8} containerClassName="mt-12" toastOptions={{ - className: "bg-white dark:bg-gray-800 text-black dark:text-white", + className: "bg-white dark:bg-dark-lighter text-black dark:text-white", duration: 5000, success: { duration: 3000, diff --git a/src/components/Features.tsx b/src/components/Features.tsx index b8b2092..cc6542e 100644 --- a/src/components/Features.tsx +++ b/src/components/Features.tsx @@ -1,77 +1,124 @@ import { BarChart3, Users, Search, Zap, Shield, Globe } from 'lucide-react'; +import { motion } from 'framer-motion'; const Features = () => { const features = [ { icon: BarChart3, title: 'Activity Analytics', - description: 'Comprehensive charts and graphs showing commit patterns, contribution streaks, and repository activity over time.', - bgColor: 'bg-blue-100', - iconColor: 'text-blue-600' + description: 'Detailed insights into commits, pull requests, and code activity patterns with beautiful visualizations.', + iconColor: 'text-blue-600', + bgColor: 'bg-blue-50', + darkBg: 'dark:bg-blue-900/20' }, { icon: Users, title: 'Multi-User Tracking', - description: 'Monitor multiple GitHub users simultaneously and compare their activity levels and contribution patterns.', - bgColor: 'bg-green-100', - iconColor: 'text-green-600' + description: 'Track multiple users and compare contribution metrics side by side in real-time dashboards.', + iconColor: 'text-green-600', + bgColor: 'bg-green-50', + darkBg: 'dark:bg-green-900/20' }, { icon: Search, title: 'Smart Search', - description: 'Quickly find and add users to your tracking list with intelligent search and auto-suggestions.', - bgColor: 'bg-purple-100', - iconColor: 'text-purple-600' + description: 'Advanced search and filtering to find specific repositories and contributions with ease.', + iconColor: 'text-purple-600', + bgColor: 'bg-purple-50', + darkBg: 'dark:bg-purple-900/20' }, { icon: Zap, title: 'Real-time Updates', - description: 'Get instant notifications and updates when tracked users make new contributions or repositories.', - bgColor: 'bg-orange-100', - iconColor: 'text-orange-600' + description: 'Stay ahead with instant notifications on new contributions and repository changes as they happen.', + iconColor: 'text-orange-600', + bgColor: 'bg-orange-50', + darkBg: 'dark:bg-orange-900/20' }, { icon: Shield, - title: 'Privacy First', - description: 'All data is fetched from public GitHub APIs. We don\'t store personal information or require GitHub access.', - bgColor: 'bg-red-100', - iconColor: 'text-red-600' + title: 'Privacy Focused', + description: 'Your data is safe. We use public APIs and never store sensitive personal information.', + iconColor: 'text-red-600', + bgColor: 'bg-red-50', + darkBg: 'dark:bg-red-900/20' }, { icon: Globe, - title: 'Export & Share', - description: 'Export activity reports and share insights with your team through various formats and integrations.', - bgColor: 'bg-indigo-100', - iconColor: 'text-indigo-600' + title: 'Global Insights', + description: 'Understand development trends across different regions and open-source ecosystems.', + iconColor: 'text-indigo-600', + bgColor: 'bg-indigo-50', + darkBg: 'dark:bg-indigo-900/20' } ]; + const containerVariants = { + hidden: { opacity: 0 }, + visible: { + opacity: 1, + transition: { + staggerChildren: 0.1 + } + } + }; + + const itemVariants = { + hidden: { opacity: 0, y: 20 }, + visible: { opacity: 1, y: 0 } + }; + return ( -
-
+
+
-

Powerful Features

-

+ + Powerful Features + + Everything you need to track, analyze, and understand GitHub activity patterns -

+
-
+ {features.map((feature, index) => { const IconComponent = feature.icon; return ( -
-
- + +
+
-

{feature.title}

-

+

+ {feature.title} +

+

{feature.description}

-
+ ); })} -
+
); diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 878366f..343ab97 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -3,7 +3,7 @@ import { Link } from 'react-router-dom'; function Footer() { return ( -