Download frontend/register.html from Britzzy/joblin: direct link, hf CLI and curl.
- Browser
- Download file 2.44 kB
-
https://huggingface.co/spaces/Britzzy/joblin/resolve/main/frontend/register.html
- Command line
-
hf download hf://spaces/Britzzy/joblin/frontend/register.html
-
curl -L -o register.html https://huggingface.co/spaces/Britzzy/joblin/resolve/main/frontend/register.html
2.44 kB
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Joblin - Create Account</title> | |
| <link rel="stylesheet" href="styles.css"> | |
| </head> | |
| <body> | |
| <div class="auth-page"> | |
| <div class="auth-card"> | |
| <a href="index.html" class="auth-brand"> | |
| <div class="auth-brand-icon">J</div> | |
| <h1>Job<span>lin</span></h1> | |
| </a> | |
| <p class="subtitle">Create your account</p> | |
| <form id="registerForm"> | |
| <div class="form-group"> | |
| <label>Your Name</label> | |
| <input type="text" id="name" placeholder="John Doe" autocomplete="name"> | |
| </div> | |
| <div class="form-group"> | |
| <label>Email</label> | |
| <input type="email" id="email" placeholder="you@example.com" required autocomplete="email"> | |
| </div> | |
| <div class="form-group"> | |
| <label>Password</label> | |
| <div class="pwd-wrapper"> | |
| <input type="password" id="password" placeholder="At least 6 characters" required minlength="6" autocomplete="new-password"> | |
| <span class="pwd-toggle" onclick="togglePwd('password',this)">👁</span> | |
| </div> | |
| </div> | |
| <button type="submit" class="btn btn-primary btn-lg" style="width:100%" id="registerBtn">Create Account</button> | |
| </form> | |
| <p class="footer-link">Already have an account? <a href="login.html">Sign in</a></p> | |
| </div> | |
| </div> | |
| <script src="app.js"></script> | |
| <script> | |
| const btn = document.getElementById("registerBtn"); | |
| document.getElementById("registerForm").addEventListener("submit", async (e) => { | |
| e.preventDefault(); | |
| btn.disabled = true; | |
| btn.innerHTML = '<span class="spinner"></span> Creating account...'; | |
| try { | |
| const data = await apiFetch("POST", "/api/auth/register", { | |
| name: document.getElementById("name").value, | |
| email: document.getElementById("email").value, | |
| password: document.getElementById("password").value, | |
| }); | |
| localStorage.setItem("joblin_token", data.token); | |
| setCurrentUser(data.user); | |
| window.location.href = "dashboard.html"; | |
| } catch (err) { | |
| showToast(err.message, "error"); | |
| btn.disabled = false; | |
| btn.textContent = "Create Account"; | |
| } | |
| }); | |
| if (getToken()) window.location.href = "dashboard.html"; | |
| const params = new URLSearchParams(window.location.search); | |
| if (params.get("email")) document.getElementById("email").value = params.get("email"); | |
| </script> | |
| </body> | |
| </html> | |