From 97e67295a578395c1355160d3cda225bc15815c5 Mon Sep 17 00:00:00 2001 From: Mahiruhela Date: Wed, 5 Aug 2026 10:57:50 +0530 Subject: [PATCH 1/2] feat: integrate CodeLens branding across navbar, footer, auth pages, 404, and loaders - Add logo.svg (horizontal wordmark) and replace favicon.svg with icon-only monogram - Replace text-based branding in Navbar and Footer with logo image - Add logo to Login, Signup, and Forgot Password pages - Add logo to 404 Not Found page - Add logo to LoaderPrimary and LoaderAlt, fixing missing flex-col so logo stacks correctly above the spinner instead of rendering side-by-side - Add Apple Touch Icon (180x180, solid background per iOS requirements) and generate apple-touch-icon.png - Add Open Graph and Twitter meta tags with generated og-logo.png (1200x630) Closes #166 --- frontend/index.html | 8 ++++++++ frontend/public/apple-touch-icon.png | Bin 0 -> 2097 bytes frontend/public/favicon.svg | 7 ++++++- frontend/public/logo.svg | 6 ++++++ frontend/public/og-logo.png | Bin 0 -> 17313 bytes frontend/src/components/auth/ForgotPassword.jsx | 1 + frontend/src/components/shared/Footer.jsx | 4 ++-- frontend/src/components/shared/Navbar.jsx | 4 ++-- .../src/components/shared/loaders/LoaderAlt.jsx | 3 ++- .../components/shared/loaders/LoaderPrimary.jsx | 3 ++- frontend/src/pages/LoginPage.jsx | 1 + frontend/src/pages/NotFoundPage.jsx | 1 + frontend/src/pages/SignupPage.jsx | 1 + 13 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 frontend/public/apple-touch-icon.png create mode 100644 frontend/public/logo.svg create mode 100644 frontend/public/og-logo.png diff --git a/frontend/index.html b/frontend/index.html index 32eecb1..ed9aaf1 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -3,8 +3,16 @@ + CodeLens + + + + + + +
diff --git a/frontend/public/apple-touch-icon.png b/frontend/public/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c904ca6d8b1dd4df42484306dd423734d01d7049 GIT binary patch literal 2097 zcmcImc{JPE9;e=*TKkqqiWwB`5KBwclG^FhSce{^QPh@-iPlynj4{;uJXBkev{V(v zw6T>$s6p(C65W$SIxyYgho8%Z!V4^g0KBCskTH!MB=lXqn&ROmNSEK zFWo)$W;5HWkQV9G*Et{DHusNxF}AGSU)BQsS{q@WFT**3oWoO2gC7GLOX+gRsMgue zzH{cZmS-`H%TCsHWnY2=Y@+N%zM;2u_G&0UaVQ%8v{cwNt*OIczRR{6p0%OOk`S1n zZfnH)_JEbOY$7Ene}L_k-VJKe5CNRPa(&FSh1(Zm+We$lGBkAb^d7oDV-Bzet`l0} zZumN?>u-7eodg2|S)T3ZmSghhi;iG9c?ri}Q6W@X-Og!oQzQ@w_Qq27AEFy$qEX8N z5DOg^5y3fwF}bL12fON(>2%`mNa_;|Q}kPzESeNx_a9<^nE20ZC>BS6R4=}K`LbF;*qjU1%7VEoD{DmR zJ{Rti*v`1+l=EwT=oH;xXiJsyWj|A~UoafJ*P}_s;c&n&{Ux<1BD=9p^0<)n&f zjvppIBszL<#*$1A!-*azK;vE!uIbO-FSB&Gpk;2J;Oq?K=kr*Crj0A(o0Xrsi~@;D zgU3l7flY?fmq;qAkN`Oq^v@&b2eb(LMa|uZ88uaS)AcZ8kcuHzK=JT+aX8YPX>;|d zR1tKZ&2IQU+h34y!`*#2-CV}BLa+riG!t92T{E59jB`Ra=6cGqSrk`%+64LfJK%iQ zH|kGZu?$bgwqRfW0wQ zg!rv7*Xmv9R{4Tq5Yd%{BDA7X(z>GjmQX8lX44(u0*;kp*^_8AAS($Du#6d48Hd0ypBLiQZGc>DPLWE%PN zSUh-0bI1b@-wGfyncZQN&8V3U1J26w@?^(y6#uWi!N%Vs+RknGI2#2GY%b*L(eo%M zgV)J4roh=HaksD%A_(sL9h$tt`q1xhU-kLN$Z>qIYG6r$_uR{DfO{^b^HyF6DVzhq}#;hLnzQNKKr_r+r{%rwf>jXo9&PUzY_8+5wl!_7ik*n_2~EGVje z-cw08?aJLHy?X&bK{X}OqrZS%N%)N#3oeHsydZE8j45Dw`gTN()YmF-yC6S0IH?}> zd$E$>Bq-9a5IyH>v)qK@0X(tOH9WC-mz;Owx|!P;urpd@|T1B#FOS zeXv75nmCG`O}3iz7^o4RW4pN*$1l**C|c~>3VH&Xk`=t>vmoS7>&J#LjS^_s`@d_A zXj9|Cxm9-)rhr-)*T86Mtrc}nZK5%#6~(DX#>6x>vUoh6j-GB^ER+<(tvDFP$4YJe z`UO~^J>m_|h{o(scg4bh_r$N6QiPdGIZ07#AMp#253Ad?p$duvI;VF8>S}7EWhlsr zw~_Mji3u=i2DSSrUR{>B&76&ijfA$}-esgJqZ~ zn-^93xzxy$?;{TN;Gj1ZmogN>(Y!b)Sh?(e?xj3N=3cll$ovJOny-{-fQ6rxG?`D& zfogpxlanL%-TxJi&84`~#!fdP+Ar`ZtK=E%!+@g4C)9e2ODfAsDwTo7zKiI9j6cPN zWdXX{*h;x+c)UknQn#U%v1roGj*Lb{MWc@QT1%Q?{r*Q_h_!|XSG$%LMQDw-l0H|C r#fF(ayrYTHl$aA1BVm1{3PkTAw!}uQvXzB@01-DQxMP!j@K65)FSqu> literal 0 HcmV?d00001 diff --git a/frontend/public/favicon.svg b/frontend/public/favicon.svg index 6893eb1..61b4529 100644 --- a/frontend/public/favicon.svg +++ b/frontend/public/favicon.svg @@ -1 +1,6 @@ - \ No newline at end of file + + + + C + L + diff --git a/frontend/public/logo.svg b/frontend/public/logo.svg new file mode 100644 index 0000000..7346c78 --- /dev/null +++ b/frontend/public/logo.svg @@ -0,0 +1,6 @@ + + + + CODE + LENS + diff --git a/frontend/public/og-logo.png b/frontend/public/og-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ed98480f480774916b845413d267386eda868cf3 GIT binary patch literal 17313 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 literal 0 HcmV?d00001 diff --git a/frontend/src/components/auth/ForgotPassword.jsx b/frontend/src/components/auth/ForgotPassword.jsx index 906b21b..d98c206 100644 --- a/frontend/src/components/auth/ForgotPassword.jsx +++ b/frontend/src/components/auth/ForgotPassword.jsx @@ -129,6 +129,7 @@ export default function ForgotPassword() { return (
+ CodeLens

RESET PASSWORD

diff --git a/frontend/src/components/shared/Footer.jsx b/frontend/src/components/shared/Footer.jsx index 519326f..2de1d2d 100644 --- a/frontend/src/components/shared/Footer.jsx +++ b/frontend/src/components/shared/Footer.jsx @@ -17,9 +17,9 @@ export default function Footer() {
- CODE
LENS + CodeLens

The developer intelligence platform. Unify your competitive programming journey across Codeforces, LeetCode & GitHub — with AI-driven insights, zero noise. diff --git a/frontend/src/components/shared/Navbar.jsx b/frontend/src/components/shared/Navbar.jsx index 09ee8a5..9aa94a5 100644 --- a/frontend/src/components/shared/Navbar.jsx +++ b/frontend/src/components/shared/Navbar.jsx @@ -385,9 +385,9 @@ export default function Navbar() { - CODELENS + CodeLens {/* ── Desktop Centre Nav ────────────────────────────────────────── */} diff --git a/frontend/src/components/shared/loaders/LoaderAlt.jsx b/frontend/src/components/shared/loaders/LoaderAlt.jsx index 23f12ad..c79a192 100644 --- a/frontend/src/components/shared/loaders/LoaderAlt.jsx +++ b/frontend/src/components/shared/loaders/LoaderAlt.jsx @@ -3,9 +3,10 @@ const Spinner = () => {

Loading, please wait... + CodeLens
{[...Array(4)].map((_, i) => (
{
Loading, please wait... + CodeLens
{/* Outer Square */}
diff --git a/frontend/src/pages/LoginPage.jsx b/frontend/src/pages/LoginPage.jsx index 3a37670..341197d 100644 --- a/frontend/src/pages/LoginPage.jsx +++ b/frontend/src/pages/LoginPage.jsx @@ -113,6 +113,7 @@ export default function LoginPage() { return (
+ CodeLens

LOGIN

diff --git a/frontend/src/pages/NotFoundPage.jsx b/frontend/src/pages/NotFoundPage.jsx index cfb722b..f91455e 100644 --- a/frontend/src/pages/NotFoundPage.jsx +++ b/frontend/src/pages/NotFoundPage.jsx @@ -29,6 +29,7 @@ export default function NotFoundPage() {
{/* Label */}
+ CodeLens

Error / Route Unavailable

diff --git a/frontend/src/pages/SignupPage.jsx b/frontend/src/pages/SignupPage.jsx index b9d43ab..cddefb4 100644 --- a/frontend/src/pages/SignupPage.jsx +++ b/frontend/src/pages/SignupPage.jsx @@ -239,6 +239,7 @@ export default function SignupPage() { return (
+ CodeLens

{step === 1 ? "SIGN UP" : "VERIFY EMAIL"}

From 386b16cecb89fc15983bedcbcbdc827235b91c45 Mon Sep 17 00:00:00 2001 From: Mahiruhela Date: Thu, 6 Aug 2026 12:00:02 +0530 Subject: [PATCH 2/2] fix: address review feedback on logo placement - Move logo outside the bordered card on Login, Signup, and Forgot Password pages instead of inside it - Remove logo from 404 page - Swap to icon-only monogram below the sm breakpoint in Navbar and Footer, showing the full wordmark on larger screens --- frontend/src/components/auth/ForgotPassword.jsx | 2 +- frontend/src/components/shared/Footer.jsx | 3 ++- frontend/src/components/shared/Navbar.jsx | 3 ++- frontend/src/pages/LoginPage.jsx | 2 +- frontend/src/pages/NotFoundPage.jsx | 1 - frontend/src/pages/SignupPage.jsx | 2 +- 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/frontend/src/components/auth/ForgotPassword.jsx b/frontend/src/components/auth/ForgotPassword.jsx index d98c206..0cbbf85 100644 --- a/frontend/src/components/auth/ForgotPassword.jsx +++ b/frontend/src/components/auth/ForgotPassword.jsx @@ -128,8 +128,8 @@ export default function ForgotPassword() { return (
+ CodeLens
- CodeLens

RESET PASSWORD

diff --git a/frontend/src/components/shared/Footer.jsx b/frontend/src/components/shared/Footer.jsx index 2de1d2d..5e8a151 100644 --- a/frontend/src/components/shared/Footer.jsx +++ b/frontend/src/components/shared/Footer.jsx @@ -19,7 +19,8 @@ export default function Footer() { to="/" className="hover:opacity-70 transition-opacity" > - CodeLens + CodeLens + CodeLens

The developer intelligence platform. Unify your competitive programming journey across Codeforces, LeetCode & GitHub — with AI-driven insights, zero noise. diff --git a/frontend/src/components/shared/Navbar.jsx b/frontend/src/components/shared/Navbar.jsx index 9aa94a5..dc256fd 100644 --- a/frontend/src/components/shared/Navbar.jsx +++ b/frontend/src/components/shared/Navbar.jsx @@ -387,7 +387,8 @@ export default function Navbar() { onClick={closeMenu} className="hover:opacity-60 transition-opacity flex-shrink-0" > - CodeLens + CodeLens + CodeLens {/* ── Desktop Centre Nav ────────────────────────────────────────── */} diff --git a/frontend/src/pages/LoginPage.jsx b/frontend/src/pages/LoginPage.jsx index 341197d..bd9aa02 100644 --- a/frontend/src/pages/LoginPage.jsx +++ b/frontend/src/pages/LoginPage.jsx @@ -112,8 +112,8 @@ export default function LoginPage() { return (

+ CodeLens
- CodeLens

LOGIN

diff --git a/frontend/src/pages/NotFoundPage.jsx b/frontend/src/pages/NotFoundPage.jsx index f91455e..cfb722b 100644 --- a/frontend/src/pages/NotFoundPage.jsx +++ b/frontend/src/pages/NotFoundPage.jsx @@ -29,7 +29,6 @@ export default function NotFoundPage() {
{/* Label */}
- CodeLens

Error / Route Unavailable

diff --git a/frontend/src/pages/SignupPage.jsx b/frontend/src/pages/SignupPage.jsx index cddefb4..1663c93 100644 --- a/frontend/src/pages/SignupPage.jsx +++ b/frontend/src/pages/SignupPage.jsx @@ -238,8 +238,8 @@ export default function SignupPage() { return (
+ CodeLens
- CodeLens

{step === 1 ? "SIGN UP" : "VERIFY EMAIL"}