Masahiko AMANO H1K0
H1K0 pushed to master at tech/tanabata 2026-06-11 17:45:10 +03:00
19ec96c544 feat(frontend): focus the page search box with / on the list sections
49e68cc263 feat(frontend): keyboard nav for the bulk tag editor
3a0dbc9ba7 feat(frontend): keyboard nav for the viewer, tag editor and filter
9a20cc1c84 feat(frontend): keyboard roving-focus and bulk-action keys on the file grid
49de9fe42b feat(frontend): global keyboard navigation and shortcuts help overlay
Compare 9 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 16:04:24 +03:00
e97b7282ff fix(frontend): make Escape dismiss overlays before clearing selection
H1K0 pushed to master at tech/tanabata 2026-06-11 15:49:59 +03:00
9a14c50250 fix(frontend): reload the file grid on filter/sort change
e7d24f0677 feat(frontend): default the apply-to-existing tag-rule toggle on
d357ae3156 feat: open file original in a new tab via authenticated direct link
03936243e4 fix(frontend): reflect rule-applied tags in batch edit
Compare 4 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 14:53:01 +03:00
a78fc5ba9a feat(backend): log file views
8f213e780c fix(frontend): sort a file's assigned tags by the chosen tag order
Compare 2 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 13:58:40 +03:00
88a8cac048 fix(frontend): load full tag/category lists in pickers, honoring sort
aae0c587e8 fix(scripts): correct autotag rule direction in legacy migration
Compare 2 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 12:56:54 +03:00
f73f954b1a fix(backend): show whole image in thumbnails and previews (contain)
H1K0 pushed to master at tech/tanabata 2026-06-11 12:44:04 +03:00
76942721ad chore(scripts): add legacy data migration
437b66e73a ci(project): add Gitea Actions deploy workflow and docs
Compare 2 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 12:07:48 +03:00
fce71bb946 feat(project): add Docker Compose with flexible storage and DB modes
69650b6464 chore(project): set the default port to 42776
0e7890a465 style(project): format Go with gofmt, set up Prettier for the frontend
f5f7db6c2a feat(project): containerize as a single image serving SPA + API
aab62cbe41 style(frontend): mute the light theme background
Compare 9 commits »
H1K0 pushed to master at tech/tanabata 2026-06-11 01:17:01 +03:00
e801eec47d feat(frontend): bidirectional lazy load for anchored grid returns
dc1af8c585 fix(frontend): make infinite scroll viewport-relative, stop eager-loading
ffb8848a96 chore(frontend): bump mock files to 500 to exercise lazy load
fa491487b7 feat(frontend): open file viewer as overlay over the mounted list
4f8d6a41f9 feat(frontend): lazy infinite scroll on tags/categories/pools lists
Compare 5 commits »
H1K0 pushed to master at tech/tanabata 2026-06-10 16:33:41 +03:00
18f1dbc052 fix(frontend): restore grid position via URL anchor on return from viewer
a1ec25a441 perf(frontend): lazy-load file tags on scroll into view
89ba6bae82 fix(backend): enforce private-by-default visibility and pool-op ACL
2af3c481bb fix(frontend): redirect to /login when the session can't be refreshed
00f63697b0 fix(frontend): render nested EXIF values instead of [object Object]
Compare 8 commits »
H1K0 pushed to master at tech/tanabata 2026-06-10 14:45:26 +03:00
bcbe0b5e8c fix(frontend): redirect root route to /files
a360cab2fc fix(frontend): use search param for pool "add files" name search
f8f58434d5 feat(frontend): restore files grid position when returning from a file
Compare 3 commits »
H1K0 pushed to master at tech/tanabata 2026-06-10 14:38:44 +03:00
12d4dbcbb2 test(backend): regression tests for the security fixes
aff270fa44 fix(backend): rate-limit login and refresh endpoints
40c91cec55 fix(backend): add baseline security response headers
591b3d2fe3 fix(backend): set HTTP server timeouts to mitigate Slowloris
f4545ff107 fix(backend): invalidate thumbnail cache on replace and permanent delete
Compare 13 commits »
H1K0 released hamori v1.0.0 — coursework deliverable release at tech/hamori 2026-06-04 23:40:16 +03:00
H1K0 pushed tag v1.0.0 to tech/hamori 2026-06-04 23:38:53 +03:00
H1K0 pushed to master at tech/tanabata 2026-04-07 01:41:29 +03:00
135c71ae4d fix(frontend): theme-aware footer navbar colors
d38e54e307 feat(frontend): use reference icons for PWA manifest and favicons
c6e91c2eaf feat(frontend): add PWA support (service worker, manifest, pwa util)
d6e9223f61 feat(frontend): implement trash view with restore and permanent delete
004ff0b45e fix(frontend): admin section fixes (pagination, actions, navbar)
Compare 10 commits »
H1K0 pushed to master at tech/tanabata 2026-04-06 08:42:21 +03:00
9b1aa40522 feat(frontend): implement bulk tag editing for multi-file selection
d79e76e9b7 feat(frontend): implement pool views and add-to-pool from file list
Compare 2 commits »
H1K0 pushed to master at tech/tanabata 2026-04-06 00:50:43 +03:00
1f591f3a3f feat(frontend): replace JS confirm() with native dialog component
1931adcd38 feat(frontend): implement category list, create, and edit pages
21f3acadf0 feat: add PATCH /tags/{id}/rules/{then_id} to activate/deactivate rules
871250345a feat(frontend): add activate/deactivate toggle for tag rules
6e24060d99 feat(frontend): add clear button to TagPicker search input
Compare 13 commits »
H1K0 pushed to master at tech/tanabata 2026-04-05 03:37:48 +03:00
e72d4822e9 feat(frontend): implement file gallery page with infinite scroll
9e341a0fc6 feat(frontend): add dev mock API plugin
7770960cbf feat(frontend): add root layout with auth guard and bottom navbar
e21d0ef67b feat(frontend): implement auth store and login page
fde8672bb1 feat(frontend): implement API client and auth module
Compare 8 commits »
H1K0 pushed to master at tech/tanabata 2026-04-04 22:10:46 +03:00
3a49036507 feat(backend): implement pool stack
21debf626d feat(backend): implement category stack
04d2dfa16e docs(project): document scoped commit naming convention in CLAUDE.md
Compare 3 commits »
H1K0 pushed to master at tech/tanabata 2026-04-04 21:37:17 +03:00
595b8fa671 feat(backend): implement full tag stack (repo, service, handler, routes)
5050dbea3c feat(backend): implement file handler and wire all /files endpoints
99508cdbf8 feat(backend): implement file service with upload, CRUD, ACL, and audit
0ae8b81a0b feat(backend): seed MIME types and support all image/video formats
fae87ad05c feat(backend): implement DiskStorage with on-demand thumbnail/preview cache
Compare 22 commits »