← back to AbramsOS
views/signup.ejs
23 lines
<%- include('partials/header', { title: 'Sign up' }) %>
<section class="auth-card glass">
<h1>Welcome to AbramsOS</h1>
<p class="subtle">First-time setup. After this, signup is locked.</p>
<% if (error) { %><p class="error-banner"><%= error %></p><% } %>
<form method="post" action="/signup" autocomplete="off">
<input type="hidden" name="_csrf" value="<%= csrfToken %>">
<label>Email
<input type="email" name="email" required autofocus>
</label>
<label>Password (min 12 chars)
<input type="password" name="password" required minlength="12" autocomplete="new-password">
</label>
<button class="button primary" type="submit">Create account</button>
<p class="subtle">After signup you'll enroll a TOTP authenticator (Google Authenticator, 1Password, Authy).</p>
</form>
</section>
<%- include('partials/footer') %>