176ef77737
CI: run jobs on debian-latest runner image
poslop2026-09-08 18:57:27 -05:00
11b7fcaa8b
CI: use REGISTRY_TOKEN secret for registry login
v0.1.0
poslop2026-09-08 18:44:06 -05:00
518a4dc026
CI: point docker job at dind sidecar via tcp DOCKER_HOST
poslop2026-09-08 18:39:36 -05:00
304c378a88
CI: trigger docker job on v* tag pushes
poslop2026-09-08 18:35:51 -05:00
6a08034b4c
Dockerfile, Gitea Actions CI workflow, README with API docs
poslop2026-09-08 17:00:36 -05:00
c6233dbbec
Real web UI: /new editor, /history with live pagination, paste view with gutter and deletion banner, /unlock page; size in public API
poslop2026-09-08 16:50:44 -05:00
9ff4d158ad
History: fixed column widths so columns stop shifting between pages
poslop2026-09-08 16:39:28 -05:00
80c9a4af86
History: working pagination over full 2431-row dataset, live filter
poslop2026-09-08 16:36:45 -05:00
76aab13fcd
History: description as own column, accurate page count (348 pages @ 7/page)
poslop2026-09-08 16:33:56 -05:00
3412cfa44c
Clean URLs: /new /history /paste /unlock; cans out of topbar; api link renamed to git
poslop2026-09-08 16:27:26 -05:00
ca82b90b0f
Wire sketch navigation: working topbar links, root redirects to history, cross-links between screens
poslop2026-09-08 16:23:01 -05:00
f66c0e777b
Burn after read + deletion tokens: single-read pastes, hard-delete via token redeem
poslop2026-09-08 16:12:25 -05:00
7d158834fc
fix customslug test: use store receiver
poslop2026-09-08 16:10:07 -05:00
faf768ad80
Custom URLs: validated slugs with reserved words, uniqueness across pastes and cans
poslop2026-09-08 16:09:43 -05:00
6f6954395e
Cans API: multipart create with mixed items, password-protected cans, item fetch inheriting can auth
poslop2026-09-08 16:08:33 -05:00
7375de249d
Phase 1 API: pastes CRUD, password lock (argon2id), expiry sweeper, soft delete with 7d grace, public list
poslop2026-09-08 16:04:34 -05:00
9ffe68e314
Add paste view, public history, can gallery, password unlock sketches
poslop2026-09-08 15:56:12 -05:00