From 10385d2e5d84d7ee1251fb75f1d30f16cc43e451 Mon Sep 17 00:00:00 2001 From: Ashwin Kumar Date: Tue, 17 Mar 2026 00:21:34 +0100 Subject: [PATCH] feat(frontend): add next parity batch for public routes --- docs/PAGE_PARITY_TRACKER.md | 40 ++++++++++++++++ src/app.css | 42 ++++++++++++++++ src/routes/about.tsx | 46 ++++++++++-------- src/routes/auth/login/index.tsx | 16 +++++++ src/routes/auth/register/index.tsx | 16 +++++++ src/routes/companies/index.tsx | 14 ++++++ src/routes/contact.tsx | 77 +++++++++++++++++++++++------- src/routes/help-center/index.tsx | 30 ++++++++++++ src/routes/hire.tsx | 14 ++++++ src/routes/job-seeker/index.tsx | 14 ++++++ src/routes/privacy.tsx | 15 ++++++ src/routes/professionals.tsx | 14 ++++++ src/routes/support/index.tsx | 17 +++++++ src/routes/terms.tsx | 15 ++++++ 14 files changed, 332 insertions(+), 38 deletions(-) create mode 100644 docs/PAGE_PARITY_TRACKER.md create mode 100644 src/routes/auth/login/index.tsx create mode 100644 src/routes/auth/register/index.tsx create mode 100644 src/routes/companies/index.tsx create mode 100644 src/routes/help-center/index.tsx create mode 100644 src/routes/hire.tsx create mode 100644 src/routes/job-seeker/index.tsx create mode 100644 src/routes/privacy.tsx create mode 100644 src/routes/professionals.tsx create mode 100644 src/routes/support/index.tsx create mode 100644 src/routes/terms.tsx diff --git a/docs/PAGE_PARITY_TRACKER.md b/docs/PAGE_PARITY_TRACKER.md new file mode 100644 index 0000000..cbe40a6 --- /dev/null +++ b/docs/PAGE_PARITY_TRACKER.md @@ -0,0 +1,40 @@ +# Frontend Page Parity Tracker + +Source repo: `/Users/ashwin/workspace/nxtgauge-frontendwebsite` (Next.js) +Target repo: `/Users/ashwin/workspace/nxtgauge-frontend-solid` (SolidStart) + +## Status Legend +- `done`: implemented in Solid with matching visual direction +- `in_progress`: route exists, partial parity +- `pending`: not ported yet + +## Public / Marketing +- `/` `done` +- `/about` `in_progress` +- `/contact` `in_progress` +- `/help-center` `in_progress` +- `/help-center/article/[slug]` `pending` +- `/support` `in_progress` +- `/support/article/[slug]` `pending` +- `/hire` `in_progress` +- `/privacy` `in_progress` +- `/terms` `in_progress` +- `/companies` `in_progress` +- `/professionals` `in_progress` +- `/job-seeker` `in_progress` + +## Auth +- `/auth/login` `in_progress` +- `/auth/register` `in_progress` +- `/auth/forgot-password` `pending` +- `/auth/verification` `pending` +- `/auth/login-verification` `pending` + +## User Workspaces (large scope) +- `/users/*` `pending` +- `/companies/*` dashboards `pending` +- `/job-seeker/(workspace)/*` `pending` + +## Notes +- Goal is strict visual/interaction parity with old Next.js design system, including dark gradients, glassmorphism, motion accents, and CTA structure. +- Runtime onboarding flow already exists in Solid at `/onboarding` and will be integrated into remaining route parity. diff --git a/src/app.css b/src/app.css index 6b99158..9665707 100644 --- a/src/app.css +++ b/src/app.css @@ -770,3 +770,45 @@ body { grid-template-columns: 1fr; } } + +.marketing-page { + padding-top: 28px; + padding-bottom: 28px; +} + +.glass-dark { + border: 1px solid rgba(255, 255, 255, 0.2); + background: linear-gradient(145deg, rgba(16, 11, 47, 0.78), rgba(16, 11, 47, 0.5)); + color: #fff; + backdrop-filter: blur(14px); +} + +.glass-light { + border: 1px solid rgba(255, 255, 255, 0.24); + background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.84)); + backdrop-filter: blur(14px); +} + +.title.light, +.subtitle.light, +.light { + color: #fff; +} + +.glass-light .subtitle { + color: #334155; +} + +.glass-light ul, +.glass-light li, +.glass-light p, +.glass-light h1, +.glass-light h2, +.glass-light h3, +.glass-light h4 { + color: #100b2f; +} + +.glass-dark .subtitle { + color: rgba(255, 255, 255, 0.82); +} diff --git a/src/routes/about.tsx b/src/routes/about.tsx index 3beeade..955e05a 100644 --- a/src/routes/about.tsx +++ b/src/routes/about.tsx @@ -2,29 +2,33 @@ import { A } from '@solidjs/router'; export default function AboutPage() { return ( -
-

About NXTGAUGE

-

Trust-First Marketplace and Hiring Platform

-

- NXTGAUGE helps customers, professionals, companies, and jobseekers connect through role-specific onboarding, - verification checks, and runtime-configured workflows. -

- -
-

What We Focus On

-

Role separation, verified identities, and city-by-city controlled launch quality.

-
    -
  • Customer intent-first onboarding for service requests
  • -
  • Professional onboarding with portfolio and verification
  • -
  • Company onboarding with business compliance checks
  • -
  • Jobseeker onboarding with profile and document validation
  • -
+
+
+

Brand Story

+

Trust-first hiring and services.

+

+ Nxtgauge is built to reduce noise, improve quality, and help people connect with confidence. +

+
- +
+
+

Our Manifesto

+
    +
  • Verify what matters
  • +
  • Reduce spam and guesswork
  • +
  • Match people faster
  • +
+
+
+

How trust works

+

Submission → Human review → Approval → Marketplace visibility.

+
+
); } diff --git a/src/routes/auth/login/index.tsx b/src/routes/auth/login/index.tsx new file mode 100644 index 0000000..1833173 --- /dev/null +++ b/src/routes/auth/login/index.tsx @@ -0,0 +1,16 @@ +import { A } from '@solidjs/router'; + +export default function LoginPage() { + return ( +
+
+

Login

+

Auth parity page scaffolded. Final auth integration to be connected in next migration stage.

+ +
+
+ ); +} diff --git a/src/routes/auth/register/index.tsx b/src/routes/auth/register/index.tsx new file mode 100644 index 0000000..0d3d203 --- /dev/null +++ b/src/routes/auth/register/index.tsx @@ -0,0 +1,16 @@ +import { A } from '@solidjs/router'; + +export default function RegisterPage() { + return ( +
+
+

Register

+

Auth parity page scaffolded. Final OTP/signup integration to be connected in next migration stage.

+ +
+
+ ); +} diff --git a/src/routes/companies/index.tsx b/src/routes/companies/index.tsx new file mode 100644 index 0000000..bdcdeb5 --- /dev/null +++ b/src/routes/companies/index.tsx @@ -0,0 +1,14 @@ +import { A } from '@solidjs/router'; + +export default function CompaniesLandingPage() { + return ( +
+
+

For Companies

+

Post jobs with verified company identity

+

Complete company onboarding and manage recruitment workflows with trust signals.

+ Start Company Onboarding +
+
+ ); +} diff --git a/src/routes/contact.tsx b/src/routes/contact.tsx index 9abedfa..f770f10 100644 --- a/src/routes/contact.tsx +++ b/src/routes/contact.tsx @@ -1,25 +1,68 @@ -import { A } from '@solidjs/router'; +import { createMemo, createSignal } from 'solid-js'; export default function ContactPage() { - return ( -
-

Contact NXTGAUGE

-

We Are Here To Help

-

For onboarding, verification, or launch support, contact our team.

+ const [name, setName] = createSignal(''); + const [email, setEmail] = createSignal(''); + const [topic, setTopic] = createSignal(''); + const [message, setMessage] = createSignal(''); + const [sent, setSent] = createSignal(false); -
-

Support Details

-

Email: support@nxtgauge.com

-

Launch City: Chennai, India

-

Support Window: 10:00 AM - 7:00 PM IST

+ const canSubmit = createMemo(() => name().trim() && email().trim() && topic().trim() && message().trim().length >= 20); + + return ( +
+
+

Reach Out

+

Contact us

+

Tell us what you need — we’ll get back to you.

-
-

Quick Actions

- +
+
{ + e.preventDefault(); + if (!canSubmit()) return; + setSent(true); + setTimeout(() => setSent(false), 2500); + setName(''); + setEmail(''); + setTopic(''); + setMessage(''); + }} + > +
+ + setName(e.currentTarget.value)} /> +
+
+ + setEmail(e.currentTarget.value)} /> +
+
+ + +
+
+ +