-
e97b7282ff
fix(frontend): make Escape dismiss overlays before clearing selection
H1K0
2026-06-11 16:04:11 +03:00
-
9a14c50250
fix(frontend): reload the file grid on filter/sort change
H1K0
2026-06-11 15:49:34 +03:00
-
e7d24f0677
feat(frontend): default the apply-to-existing tag-rule toggle on
H1K0
2026-06-11 15:49:23 +03:00
-
d357ae3156
feat: open file original in a new tab via authenticated direct link
H1K0
2026-06-11 15:40:50 +03:00
-
03936243e4
fix(frontend): reflect rule-applied tags in batch edit
H1K0
2026-06-11 15:06:25 +03:00
-
a78fc5ba9a
feat(backend): log file views
H1K0
2026-06-11 14:49:14 +03:00
-
8f213e780c
fix(frontend): sort a file's assigned tags by the chosen tag order
H1K0
2026-06-11 14:22:23 +03:00
-
88a8cac048
fix(frontend): load full tag/category lists in pickers, honoring sort
H1K0
2026-06-11 13:58:23 +03:00
-
aae0c587e8
fix(scripts): correct autotag rule direction in legacy migration
H1K0
2026-06-11 13:45:52 +03:00
-
f73f954b1a
fix(backend): show whole image in thumbnails and previews (contain)
H1K0
2026-06-11 12:56:21 +03:00
-
76942721ad
chore(scripts): add legacy data migration
H1K0
2026-06-11 12:42:06 +03:00
-
437b66e73a
ci(project): add Gitea Actions deploy workflow and docs
H1K0
2026-06-11 12:15:33 +03:00
-
fce71bb946
feat(project): add Docker Compose with flexible storage and DB modes
H1K0
2026-06-11 11:26:25 +03:00
-
69650b6464
chore(project): set the default port to 42776
H1K0
2026-06-11 11:03:26 +03:00
-
0e7890a465
style(project): format Go with gofmt, set up Prettier for the frontend
H1K0
2026-06-11 11:01:29 +03:00
-
f5f7db6c2a
feat(project): containerize as a single image serving SPA + API
H1K0
2026-06-11 10:52:27 +03:00
-
aab62cbe41
style(frontend): mute the light theme background
H1K0
2026-06-11 10:40:05 +03:00
-
7a0c57a79c
feat(frontend): finish PWA reset reload and pre-cache the HTML shell
H1K0
2026-06-11 10:36:20 +03:00
-
e8479ee4fb
docs(project): record SPA-mode decision and SvelteKit feature usage
H1K0
2026-06-11 10:28:56 +03:00
-
1f3bc2acf4
fix(frontend): open pool files in an overlay so back returns to the pool
H1K0
2026-06-11 10:22:34 +03:00
-
5968a7b593
fix(frontend): drive infinite scroll from scroll position, not observer transitions
H1K0
2026-06-11 10:17:59 +03:00
-
e801eec47d
feat(frontend): bidirectional lazy load for anchored grid returns
H1K0
2026-06-11 01:16:32 +03:00
-
dc1af8c585
fix(frontend): make infinite scroll viewport-relative, stop eager-loading
H1K0
2026-06-11 00:14:04 +03:00
-
ffb8848a96
chore(frontend): bump mock files to 500 to exercise lazy load
H1K0
2026-06-11 00:05:43 +03:00
-
fa491487b7
feat(frontend): open file viewer as overlay over the mounted list
H1K0
2026-06-11 00:02:25 +03:00
-
4f8d6a41f9
feat(frontend): lazy infinite scroll on tags/categories/pools lists
H1K0
2026-06-10 23:46:29 +03:00
-
18f1dbc052
fix(frontend): restore grid position via URL anchor on return from viewer
H1K0
2026-06-10 16:30:26 +03:00
-
a1ec25a441
perf(frontend): lazy-load file tags on scroll into view
H1K0
2026-06-10 15:18:57 +03:00
-
89ba6bae82
fix(backend): enforce private-by-default visibility and pool-op ACL
H1K0
2026-06-10 15:07:17 +03:00
-
2af3c481bb
fix(frontend): redirect to /login when the session can't be refreshed
H1K0
2026-06-10 14:55:12 +03:00
-
00f63697b0
fix(frontend): render nested EXIF values instead of [object Object]
H1K0
2026-06-10 14:55:12 +03:00
-
2ef055a41a
fix(backend): pool reorder no longer drops omitted members
H1K0
2026-06-10 14:53:26 +03:00
-
ec96fced40
perf(backend): cache thumbnail, preview and content responses
H1K0
2026-06-10 14:50:32 +03:00
-
5b973cf534
fix(frontend): resolve svelte-check type errors
H1K0
2026-06-10 14:49:17 +03:00
-
bcbe0b5e8c
fix(frontend): redirect root route to /files
H1K0
2026-06-10 14:40:47 +03:00
-
a360cab2fc
fix(frontend): use search param for pool "add files" name search
H1K0
2026-06-10 14:40:47 +03:00
-
f8f58434d5
feat(frontend): restore files grid position when returning from a file
H1K0
2026-06-10 14:39:50 +03:00
-
12d4dbcbb2
test(backend): regression tests for the security fixes
H1K0
2026-06-10 14:19:41 +03:00
-
aff270fa44
fix(backend): rate-limit login and refresh endpoints
H1K0
2026-06-10 14:14:51 +03:00
-
40c91cec55
fix(backend): add baseline security response headers
H1K0
2026-06-10 14:13:56 +03:00
-
591b3d2fe3
fix(backend): set HTTP server timeouts to mitigate Slowloris
H1K0
2026-06-10 14:13:22 +03:00
-
f4545ff107
fix(backend): invalidate thumbnail cache on replace and permanent delete
H1K0
2026-06-10 14:12:38 +03:00
-
3b79f12ec0
fix(backend): bound image decode and ffmpeg during thumbnailing
H1K0
2026-06-10 14:11:31 +03:00
-
4645107ea1
fix(backend): make access tokens revocable via session validation
H1K0
2026-06-10 14:09:25 +03:00
-
fa2acca858
fix(backend): cap upload size to prevent memory exhaustion
H1K0
2026-06-10 14:07:34 +03:00
-
f069fccd96
fix(backend): harden JWT handling and login
H1K0
2026-06-10 14:04:33 +03:00
-
9ea939ccf6
fix(backend): bootstrap admin from env instead of seeding admin/admin
H1K0
2026-06-10 14:01:48 +03:00
-
945df7ef8a
fix(backend): enforce file ACL on file-tag and import endpoints
H1K0
2026-06-10 13:59:33 +03:00
-
a6680b1c05
fix(backend): require owner/admin to read or modify object ACLs
H1K0
2026-06-10 13:59:10 +03:00
-
eb2eb00d96
fix(frontend): use $appSettings.tagRuleApplyToExisting on creating a new tag rule also
H1K0
2026-04-07 11:59:09 +03:00
-
135c71ae4d
fix(frontend): theme-aware footer navbar colors
H1K0
2026-04-07 01:10:12 +03:00
-
d38e54e307
feat(frontend): use reference icons for PWA manifest and favicons
H1K0
2026-04-07 01:04:36 +03:00
-
c6e91c2eaf
feat(frontend): add PWA support (service worker, manifest, pwa util)
H1K0
2026-04-07 01:02:53 +03:00
-
d6e9223f61
feat(frontend): implement trash view with restore and permanent delete
H1K0
2026-04-07 00:56:55 +03:00
-
004ff0b45e
fix(frontend): admin section fixes (pagination, actions, navbar)
H1K0
2026-04-07 00:56:43 +03:00
-
6e052efebf
feat(frontend): implement admin section (users + audit log)
H1K0
2026-04-07 00:27:44 +03:00
-
70cbb45b01
fix(frontend): auto-fill viewport on file list load
H1K0
2026-04-07 00:06:45 +03:00
-
012c6f9c48
feat(frontend): add configurable app settings (file load limit, tag rule apply_to_existing)
H1K0
2026-04-07 00:00:55 +03:00
-
8cfcd39ab6
feat(backend): apply tag rules retroactively to existing files on activation
H1K0
2026-04-07 00:00:45 +03:00
-
6da25dc696
feat(frontend): implement settings page
H1K0
2026-04-06 23:37:44 +03:00
-
9b1aa40522
feat(frontend): implement bulk tag editing for multi-file selection
H1K0
2026-04-06 08:40:53 +03:00
-
d79e76e9b7
feat(frontend): implement pool views and add-to-pool from file list
H1K0
2026-04-06 08:31:06 +03:00
-
1f591f3a3f
feat(frontend): replace JS confirm() with native dialog component
H1K0
2026-04-05 23:48:21 +03:00
-
1931adcd38
feat(frontend): implement category list, create, and edit pages
H1K0
2026-04-05 23:38:52 +03:00
-
21f3acadf0
feat: add PATCH /tags/{id}/rules/{then_id} to activate/deactivate rules
H1K0
2026-04-05 23:31:12 +03:00
-
871250345a
feat(frontend): add activate/deactivate toggle for tag rules
H1K0
2026-04-05 23:26:07 +03:00
-
6e24060d99
feat(frontend): add clear button to TagPicker search input
H1K0
2026-04-05 23:16:49 +03:00
-
f7d7e8ce37
feat(frontend): implement tag list, create, and edit pages
H1K0
2026-04-05 23:14:04 +03:00
-
b9cace2997
feat(frontend): implement file upload with drag-and-drop and per-file progress
H1K0
2026-04-05 14:02:26 +03:00
-
a5b610d472
feat(frontend): implement file viewer page with metadata editing and tag picker
H1K0
2026-04-05 13:55:04 +03:00
-
84c47d0282
feat(frontend): expand mock tags to 207 entries for filter bar testing
H1K0
2026-04-05 13:35:05 +03:00
-
6fa340b17c
feat(frontend): make header and filter bar sticky on scroll
H1K0
2026-04-05 13:32:35 +03:00
-
aebf7127af
feat(frontend): implement file selection with long-press, shift+click, and touch drag
H1K0
2026-04-05 13:30:26 +03:00
-
63ea1a4d6a
feat(frontend): make filter expression tokens draggable for reordering
H1K0
2026-04-05 12:57:45 +03:00
-
27d8215a0a
feat(frontend): add header, filter bar, and sorting store for files page
H1K0
2026-04-05 12:47:18 +03:00
-
e72d4822e9
feat(frontend): implement file gallery page with infinite scroll
H1K0
2026-04-05 03:34:33 +03:00
-
9e341a0fc6
feat(frontend): add dev mock API plugin
H1K0
2026-04-05 03:26:03 +03:00
-
7770960cbf
feat(frontend): add root layout with auth guard and bottom navbar
H1K0
2026-04-05 03:21:00 +03:00
-
e21d0ef67b
feat(frontend): implement auth store and login page
H1K0
2026-04-05 03:06:32 +03:00
-
fde8672bb1
feat(frontend): implement API client and auth module
H1K0
2026-04-05 03:02:35 +03:00
-
071829a79e
fix(backend): fix file upload and integration test suite
H1K0
2026-04-05 02:56:04 +03:00
-
0784605267
feat(backend): add integration tests with testcontainers-go
H1K0
2026-04-05 02:34:16 +03:00
-
e767b07b23
feat(backend): implement user, ACL, and audit stacks
H1K0
2026-04-05 02:25:16 +03:00
-
3a49036507
feat(backend): implement pool stack
H1K0
2026-04-04 22:04:27 +03:00
-
21debf626d
feat(backend): implement category stack
H1K0
2026-04-04 21:50:57 +03:00
-
04d2dfa16e
docs(project): document scoped commit naming convention in CLAUDE.md
H1K0
2026-04-04 21:41:22 +03:00
-
595b8fa671
feat(backend): implement full tag stack (repo, service, handler, routes)
H1K0
2026-04-04 21:29:20 +03:00
-
5050dbea3c
feat(backend): implement file handler and wire all /files endpoints
H1K0
2026-04-04 18:40:04 +03:00
-
99508cdbf8
feat(backend): implement file service with upload, CRUD, ACL, and audit
H1K0
2026-04-04 18:28:59 +03:00
-
0ae8b81a0b
feat(backend): seed MIME types and support all image/video formats
H1K0
2026-04-04 18:21:27 +03:00
-
fae87ad05c
feat(backend): implement DiskStorage with on-demand thumbnail/preview cache
H1K0
2026-04-04 18:11:54 +03:00
-
1a873949f4
feat(backend): implement FileRepo and filter DSL parser
H1K0
2026-04-04 16:55:23 +03:00
-
0724892e29
feat(backend): implement audit repo and service
H1K0
2026-04-04 01:19:24 +03:00
-
559f891d8d
feat(backend): implement ACL repo and service
H1K0
2026-04-04 01:13:21 +03:00
-
5a617af22c
fix(backend): wire handler layer in main.go and fix migration issues
H1K0
2026-04-04 00:54:54 +03:00
-
1766dc2b3c
feat(backend): implement auth handler, middleware, and router
H1K0
2026-04-04 00:43:41 +03:00
-
277f42035c
feat(backend): implement auth service with JWT and session management
H1K0
2026-04-04 00:38:21 +03:00
-
0e9b4637b0
feat(backend): implement db helpers and postgres pool/transactor
H1K0
2026-04-04 00:34:45 +03:00
-
2c83073903
feat(backend): implement db helpers and postgres pool/transactor
H1K0
2026-04-04 00:15:17 +03:00
-
83fda85bea
feat(backend): implement port interfaces (repository and storage)
H1K0
2026-04-04 00:11:06 +03:00