Skip to content

Comments

Added Footer in the home landing page and Fixed Contact Button Navigation#89

Open
tangyrine wants to merge 1 commit intokris70lesgo:mainfrom
tangyrine:main
Open

Added Footer in the home landing page and Fixed Contact Button Navigation#89
tangyrine wants to merge 1 commit intokris70lesgo:mainfrom
tangyrine:main

Conversation

@tangyrine
Copy link

@tangyrine tangyrine commented Oct 28, 2025

User description

Description

This pull request adds a footer section to the landing page, ensuring UI consistency across all pages.
Previously, the landing page ended with the Testimonials section and lacked a footer, making it appear incomplete compared to the Dashboard page.

Additionally, this PR connects the “Contact” button in the navbar to the new footer section, allowing smooth navigation and improving the overall user experience.


Related Issue

Closes #84


Type of Change

  • 🐛 Bug fix
  • 🚀 New feature
  • 🧹 Code refactor
  • 📝 Documentation update
  • ✅ Test addition or update
  • ⚙️ Other (please describe):

How Has This Been Tested?

  • Verified that the footer now appears correctly below the Testimonials section.
  • Tested on both desktop and mobile views to ensure proper alignment and responsiveness.
  • Confirmed that clicking the “Contact” button scrolls smoothly to the footer.
  • Checked for layout integrity and no merge conflicts across pages.

Screenshots (if applicable)

Screen.Recording.2025-10-28.134812.mp4

Additional Context

This PR resolves the missing footer issue (#84) and enhances navigation flow between the navbar and footer.
It also aligns the landing page design with the rest of the website for a more polished and professional appearance.


PR Type

Enhancement, Bug fix


Description

  • Added footer section with id "contact" for anchor navigation

  • Connected "Contact" button in navbar to footer via "#contact" link

  • Fixed syntax error in button component (removed stray 'd' character)

  • Enables smooth scrolling from navbar to footer section


Diagram Walkthrough

flowchart LR
  navbar["Navbar Contact Button"] -- "link: #contact" --> footer["Footer with id=contact"]
  button["Button Component"] -- "syntax fix" --> corrected["Corrected Component"]
Loading

File Walkthrough

Relevant files
Bug fix
button.tsx
Fix syntax error in use client directive                                 

src/components/button.tsx

  • Fixed syntax error by removing stray 'd' character from 'use client'
    directive
  • Corrected malformed comment that would cause parsing issues
+1/-1     
Enhancement
footer.tsx
Add contact anchor id to footer                                                   

src/components/footer.tsx

  • Added id="contact" attribute to footer element for anchor navigation
  • Enables smooth scrolling when clicking Contact button in navbar
+1/-1     
nav.tsx
Update Contact button link to footer anchor                           

src/components/nav.tsx

  • Updated Contact link from empty string to "#contact" hash anchor
  • Connects navbar Contact button to footer section for navigation
+1/-1     

@vercel
Copy link

vercel bot commented Oct 28, 2025

@tangyrine is attempting to deploy a commit to the agastya's projects Team on Vercel.

A member of the Team first needs to authorize it.

@qodo-free-for-open-source-projects

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🟡
🎫 #84
🟢 Ensure the Contact button navigates to the contact form/section or triggers an appropriate
action.
Use a correct link or onClick handler for the Contact navigation.
If it is an internal page section, use an anchor link such as href="#contact".
🔴 If navigating to a different route, use a React Router/Next Link component accordingly.
Fix any issues related to disconnected click handlers or incorrect component imports
causing the button not to work.
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status: Passed

Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status:
No auditing: The new navigation change triggers client-side navigation to a footer anchor without any
logging or audit event, which may be acceptable for non-critical UI actions but cannot be
verified from the diff.

Referred Code
export function NavbarDemo() {
  const navItems = [
    {
      name: "Features",
      link: "",
    },
    {
      name: "AI Generator",
      link: "/ai-generator",
    },
    {
      name: "Contact",
      link: "#contact",
    },
  ];

  const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status:
Missing guards: The button component uses router/navigation context but adds no new error handling or edge
case management in this PR; while no new failure points are introduced beyond UI changes,
robustness cannot be fully assessed from the diff.

Referred Code
'use client';
import React from "react";
import { useRouter } from "next/navigation";

const TailwindConnectButton = ({ children = null, ...props }: React.PropsWithChildren<Record<string, unknown>>) => {
  const router = useRouter();
Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@qodo-free-for-open-source-projects

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
Possible issue
Prevent unintended page reloads

Change the empty link for the "Features" navigation item to "#" to prevent
unintended page reloads when clicked.

src/components/nav.tsx [20-33]

 const navItems = [
   {
     name: "Features",
-    link: "",
+    link: "#",
   },
   {
     name: "AI Generator",
     link: "/ai-generator",
   },
   {
     name: "Contact",
     link: "#contact",
   },
 ];

[To ensure code accuracy, apply this suggestion manually]

Suggestion importance[1-10]: 6

__

Why: The suggestion correctly identifies that an empty link for "Features" will cause an undesirable page reload and proposes a standard fix, improving user experience.

Low
  • More

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] :Contact page button on the website is not working.

2 participants