Files
tracker/internal/server/templates/home.html
T
kyle c9e74b236d tracker: single-binary project tracker with auth, api keys, and json api
Go + SQLite web app, server-rendered, hackerman theme. Projects with
descriptions, searchable notes, todo/doing/done task tracking. Bcrypt
login sessions, hashed api keys, full /api/v1 crud. Deploys on straylight
via configs/tracker.nix (prebuilt binary).
2026-09-18 21:28:40 -07:00

36 lines
1.4 KiB
HTML

{{template "header" .}}
<section class="stats">
<div class="stat"><span class="num">{{.Stats.Projects}}</span><span class="label">projects</span></div>
<div class="stat todo"><span class="num">{{.Stats.Tasks.Todo}}</span><span class="label">todo</span></div>
<div class="stat doing"><span class="num">{{.Stats.Tasks.Doing}}</span><span class="label">doing</span></div>
<div class="stat done"><span class="num">{{.Stats.Tasks.Done}}</span><span class="label">done</span></div>
<div class="stat"><span class="num">{{.Stats.Notes}}</span><span class="label">notes</span></div>
</section>
<section class="panel">
<h1 class="glow">// new project</h1>
<form method="post" action="/projects" class="stack">
<input type="text" name="name" placeholder="project name" required maxlength="120">
<textarea name="description" placeholder="description…" rows="3"></textarea>
<button type="submit" class="btn primary">init ▸</button>
</form>
</section>
<section class="panel">
<h1 class="glow">// projects</h1>
{{if not .Projects}}
<p class="muted">no projects on the grid. create one above ▲</p>
{{end}}
<ul class="project-list">
{{range .Projects}}
<li>
<a class="project-link" href="/projects/{{.ID}}">{{.Name}}<span class="arrow"></span></a>
{{if .Description}}<p class="muted">{{.Description}}</p>{{end}}
</li>
{{end}}
</ul>
</section>
{{template "footer" .}}