diff --git a/src/routes/signup/[role].tsx b/src/routes/signup/[role].tsx
new file mode 100644
index 0000000..9c5181b
--- /dev/null
+++ b/src/routes/signup/[role].tsx
@@ -0,0 +1,55 @@
+import { useNavigate, useParams } from "@solidjs/router";
+import { createEffect } from "solid-js";
+
+/**
+ * Catch-all signup route for role-specific URLs.
+ *
+ * Routes like /signup/developer, /signup/photographer, /signup/tutor, etc.
+ * all map to the professional signup form with the role pre-selected.
+ *
+ * The professional route reads `role` from the query string (?role=DEVELOPER).
+ */
+const ROLE_ALIASES: Record Redirecting...
- Register as Job Seeker instead + Register as Job Seeker instead
diff --git a/src/routes/signup/index.tsx b/src/routes/signup/index.tsx index 7605a3f..7ca7467 100644 --- a/src/routes/signup/index.tsx +++ b/src/routes/signup/index.tsx @@ -24,11 +24,11 @@ export default function SignupIndexRoute() { navigate("/signup/professional", { replace: true }); } else if (intent.includes("customer")) { navigate("/signup/customer", { replace: true }); - } else if (intent.includes("job_seeker") || intent.includes("jobseeker")) { - navigate("/signup/job-seeker", { replace: true }); + } else if (intent.includes("job_seeker") || intent.includes("jobseeker") || intent.includes("job-seeker")) { + navigate("/signup/jobseeker", { replace: true }); } else { // Default to job seeker if no intent specified - navigate("/signup/job-seeker", { replace: true }); + navigate("/signup/jobseeker", { replace: true }); } });