Skip to content

Feat: add CodeLens branding assets and logo integration across frontend#195

Closed
anushreekhatri028-coder wants to merge 3 commits into
kunalverma2512:mainfrom
anushreekhatri028-coder:feat/logo
Closed

Feat: add CodeLens branding assets and logo integration across frontend#195
anushreekhatri028-coder wants to merge 3 commits into
kunalverma2512:mainfrom
anushreekhatri028-coder:feat/logo

Conversation

@anushreekhatri028-coder

@anushreekhatri028-coder anushreekhatri028-coder commented Jun 13, 2026

Copy link
Copy Markdown

📌 Pull Request Summary
##🔗 Related Issue
Closes #166

##📝 Description
This pull request introduces the official CodeLens branding across the frontend by replacing text-based branding with custom logo assets and integrating logo variants in key user-facing locations. It also improves favicon support and social media preview metadata for a more consistent brand identity.

##Changes Made
*Added custom CodeLens logo assets (horizontal, stacked, and icon-only variants).
*Replaced text-based branding in the Navbar with the official CodeLens logo.
*Updated Footer branding to use the stacked logo variant.
*Replaced the default favicon with the CodeLens icon-only logo.
*Added CodeLens logo to Login, Signup, and Forgot Password pages.
*Added branding to the 404 Not Found page.
*Added logo support for loading screens.

##Motivation
Previously, the application relied on text-only branding and the default Vite favicon, resulting in an inconsistent visual identity across the platform. These changes establish a cohesive CodeLens brand experience throughout the application, improve professionalism, and enhance social media sharing appearance.

##🚀 Type of Change
*New Feature

  • Enhancement

##🧪 Testing
Verification

  • Tested Locally
  • Existing Tests Passed

##Test Details
*Verified logo rendering in Navbar and Footer.
*Confirmed favicon displays correctly in browser tabs.
*Tested Login, Signup, and Forgot Password pages for proper logo visibility.
*Verified 404 page branding renders correctly.
*Checked loader components for logo display.
*Validated Open Graph and Twitter metadata using browser inspection tools.
*Confirmed responsive behavior across desktop and mobile screen sizes.

##✅ Checklist

  • I have read and followed the contribution guidelines.
  • I have self-reviewed my changes.
  • My changes are limited to the scope of this issue.
  • Documentation has been updated where necessary.
  • No unnecessary files or unrelated changes have been included.
  • The related issue has been linked correctly.
  • All applicable testing and validation steps have been completed.

Summary by CodeRabbit

  • New Features

    • Stronger password rules enforced (8+ chars, upper/lowercase, number, special), OTP validation, and live per-rule checklist with updated error messaging.
  • Style

    • Refreshed branding: logo imagery added across navigation, footer, auth and loading screens, and Not Found page.
    • Favicon switched to PNG.

@vercel

vercel Bot commented Jun 13, 2026

Copy link
Copy Markdown

@anushreekhatri028-coder is attempting to deploy a commit to the Kunal Verma's projects Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions

Copy link
Copy Markdown

🎉 Welcome to CodeLens — Thank You for Your Contribution!

Hey @anushreekhatri028-coder! 👋

We are genuinely excited to have you here. Every single PR — big or small — makes CodeLens better, and yours is no exception. Take a moment to review the checklist below to help us merge your work quickly and smoothly.

✅ Before Requesting a Review

  • Keep code clean, readable, and consistent with the existing codebase
  • Avoid unrelated or unnecessary file changes
  • Make sure the UI is fully responsive across all device sizes
  • Attach screenshots or a short screen recording for any UI changes
  • Resolve all merge conflicts before marking the PR as ready
  • Do not submit AI-generated, copy-pasted, or low-effort implementations

💬 Join Our Community Channel — This is Mandatory

Being part of our communication channel is compulsory for all contributors, not optional.

📡 Join the CodeLens Matrix Channel

Why join? This is where all important announcements, PR review updates, contribution discussions, and maintainer decisions happen in real time. Contributors who are not in the channel regularly miss critical context and updates, which often leads to duplicated or misaligned work. Staying connected here is what keeps the community strong and your contributions impactful.


We are rooting for you! If you have any questions, drop them in the channel or comment right here on this PR. Let's build something great together. 🚀✨

@coderabbitai

coderabbitai Bot commented Jun 13, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR introduces a PNG CodeLens favicon and replaces text wordmarks with logo images across navbar, footer, pages, and loaders; it also centralizes and strengthens password/OTP validation in Signup and ForgotPassword, adding per-rule checklists and enforcing 8+ char complexity.

Changes

Logo Integration

Layer / File(s) Summary
Favicon asset update
frontend/index.html
Favicon reference changed from /favicon.svg to /favicon.png.
Navigation and footer logos
frontend/src/components/shared/Navbar.jsx, frontend/src/components/shared/Footer.jsx
Navbar and Footer wordmarks replaced with image logos and updated styling classes.
Page headers and loaders
frontend/src/pages/LoginPage.jsx, frontend/src/pages/SignupPage.jsx, frontend/src/pages/NotFoundPage.jsx, frontend/src/components/shared/loaders/LoaderAlt.jsx, frontend/src/components/shared/loaders/LoaderPrimary.jsx, frontend/src/components/auth/ForgotPassword.jsx
Login/Signup/NotFound add header logo blocks; LoaderAlt and LoaderPrimary render logo in spinner; ForgotPassword includes a logo above the reset heading.

Strong Password Validation

Layer / File(s) Summary
ForgotPassword validation
frontend/src/components/auth/ForgotPassword.jsx
Imports validatePassword/validateOtp, derives passwordChecks and isPasswordValid, changes minLength to 8, adds checklist UI, and updates submit error text to reflect new rules.
SignupPage validation
frontend/src/pages/SignupPage.jsx
Imports validatePassword, computes passwordChecks/isPasswordValid, enforces minLength={8}, updates registration error text, and renders a live per-rule checklist gating account creation.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • kunalverma2512/CodeLens#71: Modifies ForgotPassword validation and reset flow gating, directly related to this PR's tightened password/OTP validation logic.
  • kunalverma2512/CodeLens#86: Related NotFoundPage UI changes; overlapping edits to NotFoundPage rendering and layout.

Suggested labels

enhancement, Frontend, GSSoC26, UI/UX, responsive, level:intermediate, quality:clean, type:design

Poem

🐰 A tiny logo hops in view,
On nav and loaders, bold and new,
Passwords must now jump through hoops:
Caps, numbers, specials in groups.
CodeLens twinkles — sleek and true! ✨

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning Changes to ForgotPassword and SignupPage include password validation improvements beyond the logo integration scope specified in issue #166. The password validation enhancements (validatePassword, password checks UI) in ForgotPassword.jsx and SignupPage.jsx appear unrelated to logo integration and should be addressed in separate PRs or issues.
Docstring Coverage ⚠️ Warning Docstring coverage is 40.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: adding CodeLens branding assets and logo integration across the frontend, which aligns with the file changes and PR objectives.
Description check ✅ Passed The description follows the template structure with all major sections completed including related issue, changes made, motivation, type of change, testing, and checklist items.
Linked Issues check ✅ Passed The PR addresses all coding requirements from issue #166: logo design/integration across navbar, footer, login/signup/forgot password pages, 404 page, loaders, favicon, and responsive display validation.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
frontend/src/components/auth/ForgotPassword.jsx (1)

18-22: ⚡ Quick win

Extract shared password-policy checks to avoid drift across auth flows.

Line 18-Line 22 duplicates policy logic that already exists in frontend/src/pages/SignupPage.jsx. Centralizing checks in a shared helper prevents policy mismatch between Signup and Forgot Password over time.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/components/auth/ForgotPassword.jsx` around lines 18 - 22,
Extract the password policy and OTP check into a shared helper (e.g., export
functions validatePassword(password) and validateOtp(otp) from a new module like
auth/passwordPolicy.js), move the current passwordRegex and its test logic out
of ForgotPassword.jsx (the passwordRegex, isPasswordValid and isOtpValid usages)
into those helpers, then update ForgotPassword.jsx and
frontend/src/pages/SignupPage.jsx to import and call
validatePassword(newPassword) and validateOtp(otp) instead of duplicating the
regex and length check so both flows use the single source of truth.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@frontend/src/components/auth/ForgotPassword.jsx`:
- Around line 283-289: The static checklist in the ForgotPassword.jsx JSX block
always shows checkmarks; update it to compute and show each requirement's
real-time state based on the current password input. Add a small helper (e.g.,
validatePasswordRequirements or usePasswordChecks) that takes the password state
and returns booleans for minLength, hasUppercase, hasLowercase, hasNumber,
hasSpecial (use the existing password state variable used by the component).
Replace the hardcoded <p> items in the shown div with a mapped list or
individual elements that render a green check icon/text when the corresponding
boolean is true and a gray/red cross (and different text style) when false, and
ensure the component re-renders on password change by using the existing
onChange handler for the password input. Ensure regexes cover the same rules
shown (8+ chars, A-Z, a-z, 0-9, special chars !@#$%^&*) and reference the
modified JSX block in ForgotPassword.jsx.

In `@frontend/src/components/shared/loaders/LoaderPrimary.jsx`:
- Around line 6-15: The root container in both Loader components is using a row
flex layout which places the logo beside the spinner; update the root container
class to include "flex-col" so the logo stacks above the spinner: in
frontend/src/components/shared/loaders/LoaderPrimary.jsx (lines 6-15) add
"flex-col" to the className on the root element of the LoaderPrimary component,
and in frontend/src/components/shared/loaders/LoaderAlt.jsx (lines 6-14) add
"flex-col" to the className on the root element of the LoaderAlt component.

---

Nitpick comments:
In `@frontend/src/components/auth/ForgotPassword.jsx`:
- Around line 18-22: Extract the password policy and OTP check into a shared
helper (e.g., export functions validatePassword(password) and validateOtp(otp)
from a new module like auth/passwordPolicy.js), move the current passwordRegex
and its test logic out of ForgotPassword.jsx (the passwordRegex, isPasswordValid
and isOtpValid usages) into those helpers, then update ForgotPassword.jsx and
frontend/src/pages/SignupPage.jsx to import and call
validatePassword(newPassword) and validateOtp(otp) instead of duplicating the
regex and length check so both flows use the single source of truth.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b70c9afa-302c-4ad4-bf11-552dd274581f

📥 Commits

Reviewing files that changed from the base of the PR and between d99c217 and a299164.

⛔ Files ignored due to path filters (3)
  • frontend/public/favicon.png is excluded by !**/*.png
  • frontend/public/favicon.svg is excluded by !**/*.svg
  • frontend/public/varaint3 transparant logo.png is excluded by !**/*.png
📒 Files selected for processing (8)
  • frontend/index.html
  • frontend/src/components/auth/ForgotPassword.jsx
  • frontend/src/components/shared/Footer.jsx
  • frontend/src/components/shared/Navbar.jsx
  • frontend/src/components/shared/loaders/LoaderAlt.jsx
  • frontend/src/components/shared/loaders/LoaderPrimary.jsx
  • frontend/src/pages/LoginPage.jsx
  • frontend/src/pages/SignupPage.jsx

Comment thread frontend/src/components/auth/ForgotPassword.jsx Outdated
Comment thread frontend/src/components/shared/loaders/LoaderPrimary.jsx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@frontend/src/pages/NotFoundPage.jsx`:
- Around line 32-37: The img element in the NotFoundPage component has two typos
in its src string; update the src used by the <img> (the CodeLens logo) to
correct "varaint3" to "variant3" and "transparant" to "transparent" so the
filename matches the actual asset name.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ff69e514-c99f-4bbc-a57c-e8104ba8485a

📥 Commits

Reviewing files that changed from the base of the PR and between a299164 and 414dfb1.

📒 Files selected for processing (6)
  • frontend/src/components/auth/ForgotPassword.jsx
  • frontend/src/components/shared/loaders/LoaderAlt.jsx
  • frontend/src/components/shared/loaders/LoaderPrimary.jsx
  • frontend/src/pages/NotFoundPage.jsx
  • frontend/src/pages/SignupPage.jsx
  • frontend/src/utils/passwordPolicy.js
🚧 Files skipped from review as they are similar to previous changes (4)
  • frontend/src/components/shared/loaders/LoaderPrimary.jsx
  • frontend/src/components/shared/loaders/LoaderAlt.jsx
  • frontend/src/pages/SignupPage.jsx
  • frontend/src/components/auth/ForgotPassword.jsx

Comment on lines +32 to +37
{/* CodeLens Logo */}
<img
src="/varaint3 transparant logo.png"
alt="CodeLens"
className="h-12 sm:h-14 w-auto mb-8"
/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Fix critical typos in logo filename.

The image source path contains two spelling errors that will prevent the logo from loading:

  • varaint3 should be variant3
  • transparant should be transparent
🐛 Proposed fix for filename typos
-              src="/varaint3 transparant logo.png"
+              src="/variant3 transparent logo.png"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{/* CodeLens Logo */}
<img
src="/varaint3 transparant logo.png"
alt="CodeLens"
className="h-12 sm:h-14 w-auto mb-8"
/>
{/* CodeLens Logo */}
<img
src="/variant3 transparent logo.png"
alt="CodeLens"
className="h-12 sm:h-14 w-auto mb-8"
/>
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/pages/NotFoundPage.jsx` around lines 32 - 37, The img element in
the NotFoundPage component has two typos in its src string; update the src used
by the <img> (the CodeLens logo) to correct "varaint3" to "variant3" and
"transparant" to "transparent" so the filename matches the actual asset name.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Add a Custom Logo

1 participant