1{{ define "user/login" }}
2 <!doctype html>
3 <html lang="en">
4 <head>
5 <meta charset="UTF-8" />
6 <meta
7 name="viewport"
8 content="width=device-width, initial-scale=1.0"
9 />
10 <script src="/static/htmx.min.js"></script>
11 <link rel="stylesheet" href="/static/tw.css" type="text/css" />
12 <title>login</title>
13 </head>
14 <body class="flex items-center justify-center min-h-screen">
15 <main class="max-w-64">
16 <h1 class="text-center text-2xl font-semibold italic">tangled</h1>
17 <form
18 class="w-full"
19 hx-post="/login"
20 hx-swap="none"
21 hx-disabled-elt="this"
22 >
23 <div class="flex flex-col">
24 <label for="handle">handle</label>
25 <input type="text" id="handle" name="handle" required />
26 </div>
27
28 <div class="flex flex-col mt-2">
29 <label for="app_password">app password</label>
30 <input
31 type="password"
32 id="app_password"
33 name="app_password"
34 required
35 />
36 </div>
37
38 <button
39 class="btn w-full my-2 mt-6"
40 type="submit"
41 id="login-button"
42 >
43 <span>login</span>
44 </button>
45
46 </form>
47 <p class="text-sm text-gray-500">Repository creation is currently invite-only. Join our IRC on <code>#tangled</code> on Libera Chat for an invite!</p>
48 <p class="text-sm text-gray-500 pt-2">Read an introduction to Tangled <a href="https://blog.tangled.sh/intro">here</a>.</p>
49 <p id="login-msg" class="error w-full"></p>
50 </main>
51 </body>
52 </html>
53{{ end }}