Skip to content

Commit 47c5ede

Browse files
author
Ravi Singh
committed
feat: add landing page with pricing, features, hardware kits
Apple-style one-page landing for TankSync Cloud: - Hero with animated gradient + CTA - Problem stats (water waste, pump failures) - Solution with feature checklist - How it works (3 steps with placeholders) - 9-feature grid with hover animations - Tech specs for TX and RX - Pricing: Free/Home/Pro with auto INR/USD based on timezone - Hardware kits: Single (7,499) and Dual (11,999) - Footer with contact, GitHub, YouTube links Pricing (location-detected): - India: Free / ₹99/mo / ₹299/mo - International: Free / $1.99/mo / $4.99/mo Unauthenticated users see landing page at /. Login/signup accessible via nav button.
1 parent 9889afa commit 47c5ede

2 files changed

Lines changed: 621 additions & 3 deletions

File tree

pwa/client/src/App.jsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import Alerts from './pages/Alerts.jsx';
1515
import Settings from './pages/Settings.jsx';
1616
import OTA from './pages/OTA.jsx';
1717
import LinkDevice from './pages/LinkDevice.jsx';
18+
import Landing from './pages/Landing.jsx';
1819

1920
export default function App() {
2021
return (
@@ -25,7 +26,7 @@ export default function App() {
2526
}
2627

2728
function AppRoutes() {
28-
const { user, loading } = useAuth();
29+
const { user, loading, needsVerification } = useAuth();
2930
const location = useLocation();
3031

3132
if (loading) {
@@ -39,12 +40,13 @@ function AppRoutes() {
3940
);
4041
}
4142

42-
if (!user) {
43+
if (!user || needsVerification) {
4344
return (
4445
<Routes>
46+
<Route path="/" element={<Landing />} />
4547
<Route path="/login" element={<Login />} />
4648
<Route path="/link" element={<LinkDevice />} />
47-
<Route path="*" element={<Navigate to="/login" replace />} />
49+
<Route path="*" element={<Navigate to="/" replace />} />
4850
</Routes>
4951
);
5052
}

0 commit comments

Comments
 (0)