From 3a455c4ec8149014ddb5cb75cf4a758c67bdb2c1 Mon Sep 17 00:00:00 2001 From: CeeJayyy007 <63643138+CeeJayyy007@users.noreply.github.com> Date: Thu, 7 Aug 2025 21:36:22 -0400 Subject: [PATCH 01/15] chore: fix linting for backend ser4vice and responsiveness for the nav bar on the landing page --- .../components/section/floating-nav.tsx | 187 +++++++++++++----- 1 file changed, 139 insertions(+), 48 deletions(-) diff --git a/packages/frontend/src/features/landing/components/section/floating-nav.tsx b/packages/frontend/src/features/landing/components/section/floating-nav.tsx index 6078e5d..bcaf0e0 100644 --- a/packages/frontend/src/features/landing/components/section/floating-nav.tsx +++ b/packages/frontend/src/features/landing/components/section/floating-nav.tsx @@ -5,6 +5,7 @@ import { Button } from '@/shared/components/ui/button'; import { cn } from '@/shared/lib/utils'; import { SharedIcons } from '@/shared/components/icons'; import Link from 'next/link'; +import { Menu, X } from 'lucide-react'; interface NavItem { label: string; @@ -22,6 +23,7 @@ const navItems: NavItem[] = [ export function FloatingNav() { const [isScrolled, setIsScrolled] = useState(false); const [activeHash, setActiveHash] = useState(''); + const [isMenuOpen, setIsMenuOpen] = useState(false); useEffect(() => { // Update active hash on mount and hash change @@ -61,58 +63,147 @@ export function FloatingNav() { // Update URL and trigger hashchange after scrolling window.history.pushState(null, '', href); window.dispatchEvent(new HashChangeEvent('hashchange')); + + // Close mobile menu if open + if (isMenuOpen) setIsMenuOpen(false); } }; return ( - + + {/* Navigation Links (desktop) */} +
+ {navItems.map((item) => ( + { + e.preventDefault(); + handleNavClick(item.href); + }} + className={cn( + 'px-2 text-base font-medium text-primary hover:border-b hover:border-primary', + item.href === activeHash ? 'border-b border-primary' : '' + )} + > + {item.label} + + ))} +
+ + {/* Action Buttons (desktop) */} +
+ + + + + + +
+ + {/* Hamburger (mobile) */} + + + + {/* Mobile Menu Overlay */} + {isMenuOpen && ( +
+ {/* Backdrop */} +
setIsMenuOpen(false)} + aria-hidden="true" + /> + + {/* Panel */} +
+
+ { + e.preventDefault(); + handleNavClick('#home'); + }} + > + + + CommuNet + + + +
+ + + +
+ setIsMenuOpen(false)}> + + + setIsMenuOpen(false)}> + + +
+
+
+ )} + ); } From 1e021014c8f75c3071b0f08a07fb6c3389528698 Mon Sep 17 00:00:00 2001 From: CeeJayyy007 <63643138+CeeJayyy007@users.noreply.github.com> Date: Thu, 7 Aug 2025 21:46:55 -0400 Subject: [PATCH 02/15] chore: update landing page responsiveness --- .../components/section/about-section.tsx | 25 ++++++------ .../components/section/contact-section.tsx | 19 ++++++---- .../components/section/features-section.tsx | 17 +++++---- .../landing/components/section/footer.tsx | 6 +-- .../components/section/forum-section.tsx | 38 +++++++++---------- .../components/section/hero-section.tsx | 11 +++--- .../components/section/mentor-section.tsx | 29 ++++++++------ .../landing/components/section/newsletter.tsx | 17 ++++----- .../landing/components/section/partners.tsx | 9 +++-- 9 files changed, 90 insertions(+), 81 deletions(-) diff --git a/packages/frontend/src/features/landing/components/section/about-section.tsx b/packages/frontend/src/features/landing/components/section/about-section.tsx index 11570f7..1544fc9 100644 --- a/packages/frontend/src/features/landing/components/section/about-section.tsx +++ b/packages/frontend/src/features/landing/components/section/about-section.tsx @@ -2,20 +2,19 @@ import Image from 'next/image'; export function AboutSection() { return ( -
-
-
-
+
+
+
{/* Content */} -
+

OUR STORY

-

+

About Us

-

+

In 2019, Wunmi Adekanmbi discovered Alberta’s thriving tech scene but also noticed a lack of diversity. Determined to create a more inclusive space, she founded Immigrant Techies Alberta, a @@ -28,15 +27,15 @@ export function AboutSection() {

{/* Forum Preview */} -
+
{/* Floating avatars */} -
+
@@ -46,7 +45,7 @@ export function AboutSection() { {/* Background decoration */}
-
+
); diff --git a/packages/frontend/src/features/landing/components/section/contact-section.tsx b/packages/frontend/src/features/landing/components/section/contact-section.tsx index 17a8d56..103a4df 100644 --- a/packages/frontend/src/features/landing/components/section/contact-section.tsx +++ b/packages/frontend/src/features/landing/components/section/contact-section.tsx @@ -65,19 +65,22 @@ export function ContactSection() { } return ( -
+
Have Questions? We're Here to Help
-

+

Get In Touch

-
+
+
-
+
WHY JOIN US?
-

+

Connect. Learn. Thrive.

-
+
{features.map((feature) => (
{ router.push(feature.link); @@ -67,12 +70,12 @@ export function FeaturesSection() { description={feature.description} icon={feature.icon} bgColor={feature.bgColor} - iconClassName="h-[64px] w-[56px]" + iconClassName="h-12 w-12 sm:h-[56px] sm:w-[48px] md:h-[64px] md:w-[56px]" />
))}
- +
diff --git a/packages/frontend/src/features/landing/components/section/footer.tsx b/packages/frontend/src/features/landing/components/section/footer.tsx index e8d981a..6762b73 100644 --- a/packages/frontend/src/features/landing/components/section/footer.tsx +++ b/packages/frontend/src/features/landing/components/section/footer.tsx @@ -44,7 +44,7 @@ const FooterLink = ({ href, children }: FooterLinkProps) => { export function FooterSection() { return (