1+ import { Link } from 'react-router-dom' ;
2+ import { Github , Twitter , Linkedin , ArrowRight , Database } from 'lucide-react' ;
3+
4+ export default function Footer ( ) {
5+ return (
6+ < footer className = "modern-footer" >
7+ < div className = "footer-content container" >
8+
9+ { /* Top Section: Centered Layout */ }
10+ < div className = "footer-top" >
11+
12+ { /* Brand / Newsletter Column */ }
13+ < div className = "footer-brand-col" >
14+ < div style = { { display : 'flex' , alignItems : 'center' , gap : '8px' , marginBottom : '1rem' } } >
15+ < Database size = { 24 } color = "var(--color-primary)" />
16+ < span style = { { fontSize : '1.2rem' , fontWeight : 700 , color : '#fff' } } > urBackend</ span >
17+ </ div >
18+ < p style = { { color : 'var(--color-text-muted)' , marginBottom : '1.5rem' , maxWidth : '300px' } } >
19+ The instant Backend-as-a-Service for frontend developers. Ship faster.
20+ </ p >
21+
22+ < div className = "footer-input-wrapper" >
23+ < input type = "email" placeholder = "Stay up to date" />
24+ < button > < ArrowRight size = { 16 } /> </ button >
25+ </ div >
26+ </ div >
27+
28+ { /* Navigation Columns */ }
29+ < div className = "footer-nav-grid" >
30+ < div className = "footer-col" >
31+ < h4 > Product</ h4 >
32+ < Link to = "/#features" > Database</ Link >
33+ < Link to = "/#features" > Auth</ Link >
34+ < Link to = "/#features" > Storage</ Link >
35+ < Link to = "/pricing" > Pricing</ Link >
36+ </ div >
37+ < div className = "footer-col" >
38+ < h4 > Resources</ h4 >
39+ < Link to = "/docs" > Documentation</ Link >
40+ < Link to = "/docs" > API Reference</ Link >
41+ < Link to = "/community" > Community</ Link >
42+ < a href = "https://github.com/yash-pouranik" target = "_blank" rel = "noreferrer" > GitHub</ a >
43+ </ div >
44+ < div className = "footer-col" >
45+ < h4 > Company</ h4 >
46+ < Link to = "/about" > About</ Link >
47+ < Link to = "/blog" > Blog</ Link >
48+ < Link to = "/careers" > Careers</ Link >
49+ < Link to = "/contact" > Contact</ Link >
50+ </ div >
51+ </ div >
52+ </ div >
53+
54+ { /* Middle: Socials & Legal (Also Centered) */ }
55+ < div className = "footer-middle" >
56+ < div className = "social-links" >
57+ < a href = "#" className = "social-icon" > < Github size = { 20 } /> </ a >
58+ < a href = "#" className = "social-icon" > < Twitter size = { 20 } /> </ a >
59+ < a href = "#" className = "social-icon" > < Linkedin size = { 20 } /> </ a >
60+ </ div >
61+ < div className = "legal-links" >
62+ < span > © 2025 urBackend Inc.</ span >
63+ < Link to = "/privacy" > Privacy</ Link >
64+ < Link to = "/terms" > Terms</ Link >
65+ </ div >
66+ </ div >
67+
68+ { /* Bottom: Massive Typography */ }
69+ < div className = "footer-big-text" >
70+ URBACKEND
71+ </ div >
72+ </ div >
73+
74+ { /* --- UPDATED STYLES (Center Aligned) --- */ }
75+ < style > { `
76+ .modern-footer {
77+ background-color: #050505;
78+ border-top: 1px solid #222;
79+ padding-top: 6rem;
80+ color: #fff;
81+ overflow: hidden;
82+ position: relative;
83+ }
84+
85+ /* --- KEY FIXES HERE --- */
86+ .footer-top {
87+ display: flex;
88+ flex-wrap: wrap;
89+ justify-content: center; /* Center alignment */
90+ gap: 4rem; /* Reduced from 8rem to prevent wrapping */
91+ margin-bottom: 5rem;
92+ text-align: left; /* Keep text left aligned inside blocks */
93+ }
94+
95+ .footer-brand-col {
96+ flex: 0 1 auto; /* Don't stretch */
97+ min-width: 280px;
98+ }
99+
100+ .footer-nav-grid {
101+ display: flex;
102+ gap: 3rem; /* Reduced from 5rem */
103+ flex-wrap: wrap;
104+ }
105+ /* --------------------- */
106+
107+ /* Input Styles */
108+ .footer-input-wrapper {
109+ display: flex;
110+ background: #1a1a1a;
111+ border: 1px solid #333;
112+ border-radius: 50px;
113+ padding: 6px;
114+ width: 100%; /* Fill column width */
115+ max-width: 320px;
116+ transition: border-color 0.2s;
117+ }
118+ .footer-input-wrapper:focus-within {
119+ border-color: var(--color-primary);
120+ }
121+ .footer-input-wrapper input {
122+ background: transparent;
123+ border: none;
124+ color: #fff;
125+ padding: 0 16px;
126+ flex: 1;
127+ outline: none;
128+ font-size: 0.9rem;
129+ }
130+ .footer-input-wrapper button {
131+ background: #333;
132+ border: none;
133+ color: #fff;
134+ width: 36px;
135+ height: 36px;
136+ border-radius: 50%;
137+ display: flex;
138+ align-items: center;
139+ justify-content: center;
140+ cursor: pointer;
141+ transition: background 0.2s;
142+ }
143+ .footer-input-wrapper button:hover {
144+ background: var(--color-primary);
145+ color: #000;
146+ }
147+
148+ /* Links Styles */
149+ .footer-col h4 {
150+ font-size: 0.75rem;
151+ text-transform: uppercase;
152+ color: #666;
153+ margin-bottom: 1.2rem;
154+ font-weight: 700;
155+ letter-spacing: 1px;
156+ }
157+ .footer-col {
158+ display: flex;
159+ flex-direction: column;
160+ gap: 12px;
161+ }
162+ .footer-col a {
163+ color: #ccc;
164+ text-decoration: none;
165+ font-size: 0.95rem;
166+ transition: color 0.2s;
167+ }
168+ .footer-col a:hover {
169+ color: #fff;
170+ }
171+
172+ /* Middle Section */
173+ .footer-middle {
174+ display: flex;
175+ justify-content: center; /* Centered */
176+ gap: 4rem; /* Gap between Socials and Legal */
177+ align-items: center;
178+ padding-bottom: 3rem;
179+ border-bottom: 1px solid #222;
180+ flex-wrap: wrap;
181+ }
182+ .social-links { display: flex; gap: 1.5rem; }
183+ .social-icon { color: #666; transition: 0.2s; }
184+ .social-icon:hover { color: #fff; }
185+
186+ .legal-links {
187+ display: flex;
188+ gap: 2rem;
189+ font-size: 0.85rem;
190+ color: #666;
191+ }
192+ .legal-links a { color: #666; text-decoration: none; }
193+ .legal-links a:hover { color: #fff; }
194+
195+ /* BIG TEXT */
196+ .footer-big-text {
197+ font-size: clamp(3rem, 15vw, 12rem); /* Slightly reduced max size */
198+ font-weight: 900;
199+ color: rgba(255, 255, 255, 0.03); /* Subtle opacity */
200+ background: linear-gradient(180deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%); /* Optional gradient effect */
201+ -webkit-background-clip: text;
202+ background-clip: text;
203+ line-height: 0.8;
204+ text-align: center;
205+ margin-top: 1rem;
206+ margin-bottom: -2%;
207+ letter-spacing: -0.04em;
208+ pointer-events: none;
209+ user-select: none;
210+ }
211+
212+ /* Mobile Tweaks */
213+ @media (max-width: 900px) {
214+ .footer-top {
215+ flex-direction: column;
216+ align-items: center;
217+ text-align: center;
218+ gap: 3rem;
219+ }
220+ .footer-brand-col {
221+ display: flex;
222+ flex-direction: column;
223+ align-items: center;
224+ }
225+ .footer-nav-grid {
226+ gap: 3rem;
227+ justify-content: center;
228+ text-align: center; /* Center links on mobile for better symmetry */
229+ }
230+ /* If using left align on mobile, ensure consistent width */
231+ /* .footer-nav-grid { text-align: left; } */
232+
233+ .footer-middle {
234+ flex-direction: column;
235+ gap: 2rem;
236+ }
237+ }
238+ ` } </ style >
239+ </ footer >
240+ ) ;
241+ }
0 commit comments