From 55f59e8e15baba7778d0c1ae7cf41808a8a78696 Mon Sep 17 00:00:00 2001 From: k4rth1k-h3gd3 Date: Sun, 1 Feb 2026 10:25:46 +0530 Subject: [PATCH 1/3] Added Light theme toggle to the wesbite and some UI polish --- src/app/globals.css | 61 +++++++++++-- src/app/layout.tsx | 2 +- src/components/home/FeaturesSection.tsx | 108 ++++++++++++++---------- src/components/home/HeroSection.tsx | 33 +++++--- src/components/layout/Footer.tsx | 48 +++++++---- src/components/layout/Navbar.tsx | 26 +++++- src/hooks/useTheme.ts | 41 +++++++++ 7 files changed, 234 insertions(+), 85 deletions(-) create mode 100644 src/hooks/useTheme.ts diff --git a/src/app/globals.css b/src/app/globals.css index a2dc41e..884117a 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -12,15 +12,64 @@ --font-mono: var(--font-geist-mono); } -@media (prefers-color-scheme: dark) { - :root { - --background: #0a0a0a; - --foreground: #ededed; - } +.dark { + --background: #0a0a0a; + --foreground: #ededed; } -body { +/* LIGHT MODE BACKGROUND */ + +/* Light mode background change */ +html:not(.dark) { + --hero-bg: linear-gradient( + 135deg, + #f7f9ff 0%, + #eef2ff 45%, + #ffffff 100% + ); +} + +/* Dark mode - Orginal */ +html.dark { + --hero-bg: + radial-gradient( + 1200px circle at 20% 20%, + rgba(88, 101, 242, 0.35), + transparent 60% + ), + radial-gradient( + 1000px circle at 80% 30%, + rgba(168, 85, 247, 0.35), + transparent 60% + ), + linear-gradient( + 180deg, + #020617 0%, + #020617 100% + ); +} + +html { background: var(--background); color: var(--foreground); +} + +body { + background: transparent; + color: inherit; font-family: Arial, Helvetica, sans-serif; } + +/* Override hardcoded text colors */ +body *:not(.gradient-text) { + color: inherit; +} + +/* Makes the sections to use theme background colors */ +section, +main, +article, +header +{ + background-color: transparent; +} \ No newline at end of file diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 6b40957..1093920 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -52,7 +52,7 @@ export const viewport: Viewport = { { media: '(prefers-color-scheme: light)', color: '#1f2937' }, { media: '(prefers-color-scheme: dark)', color: '#111827' }, ], - colorScheme: 'dark', + colorScheme: 'light dark', }; export default function RootLayout({ diff --git a/src/components/home/FeaturesSection.tsx b/src/components/home/FeaturesSection.tsx index 5dd6d5e..0feded1 100644 --- a/src/components/home/FeaturesSection.tsx +++ b/src/components/home/FeaturesSection.tsx @@ -103,7 +103,6 @@ const FeaturesSection = () => { } ]; - const startAutoScroll = useCallback(() => { if (intervalRef.current) { clearInterval(intervalRef.current); @@ -140,28 +139,31 @@ const FeaturesSection = () => { }; return ( -
+
{/* Background effects */} -
-
-
+
+
+
-
- - Open Source +
+ + + Open Source

- The Future of + The Future of Social Browsing

-

+

BrowsePing is an{' '} open-source @@ -173,15 +175,15 @@ const FeaturesSection = () => {

{/* Open Source Badge */} -
+
- Community-driven development + Community-driven development
-
- Transparent & extensible -
- MIT Licensed +
+ Transparent & extensible +
+ MIT Licensed
@@ -194,16 +196,23 @@ const FeaturesSection = () => {
{/* Card */}
{features[(currentIndex - 1 + features.length) % features.length] && (
@@ -211,10 +220,10 @@ const FeaturesSection = () => { {features[(currentIndex - 1 + features.length) % features.length].icon}
-

+

{features[(currentIndex - 1 + features.length) % features.length].title}

-

+

{features[(currentIndex - 1 + features.length) % features.length].description}

@@ -224,12 +233,13 @@ const FeaturesSection = () => { {/* Center Card */}
-
+
{/* Current feature content */}
- + {features[currentIndex].category}
@@ -241,20 +251,20 @@ const FeaturesSection = () => {
-

+

{features[currentIndex].title}

-

+

{features[currentIndex].detailedDescription}

{/* Benefits */}
{features[currentIndex].benefits.map((benefit, idx) => ( -
+
- {benefit} + {benefit}
))}
@@ -277,7 +287,9 @@ const FeaturesSection = () => {
{features[(currentIndex + 1) % features.length] && (
@@ -285,10 +297,10 @@ const FeaturesSection = () => { {features[(currentIndex + 1) % features.length].icon}
-

+

{features[(currentIndex + 1) % features.length].title}

-

+

{features[(currentIndex + 1) % features.length].description}

@@ -297,17 +309,23 @@ const FeaturesSection = () => {
{/* Background decoration */}
-
-
+
+
@@ -319,7 +337,7 @@ const FeaturesSection = () => { onClick={() => goToSlide(index)} className={`w-3 h-3 rounded-full transition-all duration-300 ${index === currentIndex ? `bg-gradient-to-r ${features[currentIndex].gradient} scale-125` - : 'bg-gray-600 hover:bg-gray-500' + : 'bg-[color:rgba(0,0,0,0.25)] hover:bg-[color:rgba(0,0,0,0.4)] dark:bg-gray-600 dark:hover:bg-gray-500' }`} /> ))} @@ -329,12 +347,12 @@ const FeaturesSection = () => { {/* Product Hunt Badge Section */}
-

+

Featured on Product Hunt

-

+

Show your support and help us reach more users by upvoting BrowsePing on Product Hunt!

@@ -347,11 +365,11 @@ const FeaturesSection = () => { className="inline-block hover:scale-105 transition-transform duration-300 group" > BrowsePing - Socialize your presence and make browsing insightful. | Product Hunt
@@ -361,11 +379,13 @@ const FeaturesSection = () => {
-
-
+
+
-
+
{/* Content section */}
@@ -373,7 +393,7 @@ const FeaturesSection = () => {
-

+

Open Source @@ -381,7 +401,7 @@ const FeaturesSection = () => {

-

+

Join developers building the future of social browsing. Contribute and help shape the project.

diff --git a/src/components/home/HeroSection.tsx b/src/components/home/HeroSection.tsx index 40730d6..349b1ef 100644 --- a/src/components/home/HeroSection.tsx +++ b/src/components/home/HeroSection.tsx @@ -33,17 +33,22 @@ const HeroSection = () => { }, []); return ( -
- {/* Animated gradient background */} -
+
+ {/* Animated gradient background */} +
{/* Grid pattern overlay */}
{
{/* Badge */} -
diff --git a/src/components/layout/Footer.tsx b/src/components/layout/Footer.tsx index 43cf909..8ff049a 100644 --- a/src/components/layout/Footer.tsx +++ b/src/components/layout/Footer.tsx @@ -7,11 +7,21 @@ const Footer = () => { const currentYear = new Date().getFullYear(); return ( -
); }; diff --git a/src/components/home/HeroSection.tsx b/src/components/home/HeroSection.tsx index 349b1ef..9f17794 100644 --- a/src/components/home/HeroSection.tsx +++ b/src/components/home/HeroSection.tsx @@ -64,18 +64,43 @@ const HeroSection = () => {
{/* Badge */} +<<<<<<< HEAD
{[ - { icon: FiGithub, text: 'Open Source', color: 'text-green-400' }, - { icon: FiUsers, text: 'Social Presence', color: 'text-blue-400' }, - { icon: FiBarChart, text: 'Analytics', color: 'text-cyan-400' }, - { icon: FiShield, text: 'Privacy First', color: 'text-purple-400' } + { icon: FiGithub, text: 'Open Source', color: 'text-green-500' }, + { icon: FiUsers, text: 'Social Presence', color: 'text-blue-600' }, + { icon: FiBarChart, text: 'Analytics', color: 'text-cyan-600' }, + { icon: FiShield, text: 'Privacy First', color: 'text-purple-500' } ].map((feature, index) => ( +<<<<<<< HEAD
@@ -145,7 +177,7 @@ const HeroSection = () => {
-

Available for all major browsers

+

Available for all major browsers

{allBrowsers.map((browser, index) => (
{ className="flex flex-col items-center space-y-2 group cursor-pointer" style={{ animationDelay: `${index * 0.1}s` }} > -
+
{browser.icon}
- + {browser.name}
diff --git a/src/components/layout/Footer.tsx b/src/components/layout/Footer.tsx index 8ff049a..203f4a1 100644 --- a/src/components/layout/Footer.tsx +++ b/src/components/layout/Footer.tsx @@ -28,18 +28,19 @@ const Footer = () => {
{/* Brand */}
-
-
+
+
BP
BrowsePing -
Socialize Your Browsing
+
Socialize Your Browsing
-

+

Transform your solitary browsing into a vibrant social experience. Connect with friends, share your digital presence, and discover what's capturing everyone's attention across the web.

@@ -72,8 +73,8 @@ const Footer = () => {
-
+
© {currentYear} BrowsePing. All rights reserved.
-
+
Made with
+
diff --git a/src/components/layout/Navbar.tsx b/src/components/layout/Navbar.tsx index 64dd960..fd60cc8 100644 --- a/src/components/layout/Navbar.tsx +++ b/src/components/layout/Navbar.tsx @@ -41,25 +41,30 @@ const Navbar = () => { =======