GopalKrushnaMahapatra commited on
Commit
2684d16
·
verified ·
1 Parent(s): db6c783

Update signup.html

Browse files
Files changed (1) hide show
  1. signup.html +82 -82
signup.html CHANGED
@@ -1,82 +1,82 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <title>Sign Up – TrueWrite Scan</title>
6
- <script src="https://cdn.tailwindcss.com"></script>
7
- </head>
8
- <body class="bg-slate-950 text-white min-h-screen flex items-center justify-center">
9
- <div class="max-w-md w-full mx-4 bg-slate-900/70 border border-slate-800 rounded-2xl p-6 shadow-xl">
10
- <h1 class="text-2xl font-bold mb-1">Create your account</h1>
11
- <p class="text-xs text-slate-400 mb-4">Sign up to use Grammar, Plagiarism, and AI checks.</p>
12
-
13
- <form id="signupForm" class="space-y-4">
14
- <div>
15
- <label class="block text-xs mb-1">Full name</label>
16
- <input id="name" type="text" required
17
- class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
18
- </div>
19
- <div>
20
- <label class="block text-xs mb-1">Email</label>
21
- <input id="email" type="email" required
22
- class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
23
- </div>
24
- <div>
25
- <label class="block text-xs mb-1">Password</label>
26
- <input id="password" type="password" required minlength="6"
27
- class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
28
- </div>
29
- <p id="signupError" class="text-xs text-red-400 h-4"></p>
30
- <button type="submit"
31
- class="w-full py-2 rounded-lg bg-indigo-500 hover:bg-indigo-600 text-sm font-semibold">
32
- Sign up
33
- </button>
34
- </form>
35
-
36
- <p class="mt-4 text-xs text-slate-400 text-center">
37
- Already have an account?
38
- <a href="login.html" class="text-indigo-300 underline underline-offset-2">Login</a>
39
- </p>
40
- </div>
41
-
42
- <script>
43
- const BACKEND_URL = "http://localhost:8000";
44
-
45
- const form = document.getElementById("signupForm");
46
- const err = document.getElementById("signupError");
47
-
48
- form.addEventListener("submit", async (e) => {
49
- e.preventDefault();
50
- err.textContent = "";
51
-
52
- const name = document.getElementById("name").value.trim();
53
- const email = document.getElementById("email").value.trim();
54
- const password = document.getElementById("password").value;
55
-
56
- try {
57
- const res = await fetch(`${BACKEND_URL}/api/signup`, {
58
- method: "POST",
59
- headers: { "Content-Type": "application/json" },
60
- body: JSON.stringify({ name, email, password })
61
- });
62
-
63
- const data = await res.json();
64
- if (!res.ok) {
65
- err.textContent = data.detail || "Signup failed";
66
- return;
67
- }
68
-
69
- localStorage.setItem("truewriteToken", data.token);
70
- localStorage.setItem("truewriteUser", JSON.stringify({
71
- name: data.name,
72
- email: data.email
73
- }));
74
-
75
- window.location.href = "dashboard.html";
76
- } catch (e2) {
77
- err.textContent = "Server error. Is backend running?";
78
- }
79
- });
80
- </script>
81
- </body>
82
- </html>
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <title>Sign Up – TrueWrite Scan</title>
6
+ <script src="https://cdn.tailwindcss.com"></script>
7
+ </head>
8
+ <body class="bg-slate-950 text-white min-h-screen flex items-center justify-center">
9
+ <div class="max-w-md w-full mx-4 bg-slate-900/70 border border-slate-800 rounded-2xl p-6 shadow-xl">
10
+ <h1 class="text-2xl font-bold mb-1">Create your account</h1>
11
+ <p class="text-xs text-slate-400 mb-4">Sign up to use Grammar, Plagiarism, and AI checks.</p>
12
+
13
+ <form id="signupForm" class="space-y-4">
14
+ <div>
15
+ <label class="block text-xs mb-1">Full name</label>
16
+ <input id="name" type="text" required
17
+ class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
18
+ </div>
19
+ <div>
20
+ <label class="block text-xs mb-1">Email</label>
21
+ <input id="email" type="email" required
22
+ class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
23
+ </div>
24
+ <div>
25
+ <label class="block text-xs mb-1">Password</label>
26
+ <input id="password" type="password" required minlength="6"
27
+ class="w-full px-3 py-2 rounded-lg bg-slate-950 border border-slate-700 text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500" />
28
+ </div>
29
+ <p id="signupError" class="text-xs text-red-400 h-4"></p>
30
+ <button type="submit"
31
+ class="w-full py-2 rounded-lg bg-indigo-500 hover:bg-indigo-600 text-sm font-semibold">
32
+ Sign up
33
+ </button>
34
+ </form>
35
+
36
+ <p class="mt-4 text-xs text-slate-400 text-center">
37
+ Already have an account?
38
+ <a href="login.html" class="text-indigo-300 underline underline-offset-2">Login</a>
39
+ </p>
40
+ </div>
41
+
42
+ <script>
43
+ const BACKEND_URL = "https://gopalkrushnamahapatra-truewrite-scan.hf.space";
44
+
45
+ const form = document.getElementById("signupForm");
46
+ const err = document.getElementById("signupError");
47
+
48
+ form.addEventListener("submit", async (e) => {
49
+ e.preventDefault();
50
+ err.textContent = "";
51
+
52
+ const name = document.getElementById("name").value.trim();
53
+ const email = document.getElementById("email").value.trim();
54
+ const password = document.getElementById("password").value;
55
+
56
+ try {
57
+ const res = await fetch(`${BACKEND_URL}/api/signup`, {
58
+ method: "POST",
59
+ headers: { "Content-Type": "application/json" },
60
+ body: JSON.stringify({ name, email, password })
61
+ });
62
+
63
+ const data = await res.json();
64
+ if (!res.ok) {
65
+ err.textContent = data.detail || "Signup failed";
66
+ return;
67
+ }
68
+
69
+ localStorage.setItem("truewriteToken", data.token);
70
+ localStorage.setItem("truewriteUser", JSON.stringify({
71
+ name: data.name,
72
+ email: data.email
73
+ }));
74
+
75
+ window.location.href = "dashboard.html";
76
+ } catch (e2) {
77
+ err.textContent = "Server error. Is backend running?";
78
+ }
79
+ });
80
+ </script>
81
+ </body>
82
+ </html>