-
cb5bc120dc
fix(web): restore button cursor: pointer affordance under Tailwind v4
dtoro
2026-05-17 22:00:34 +02:00
-
a72619e3d1
feat(timeline): focus follows archive, snaps to first on view load
dtoro
2026-05-17 21:56:54 +02:00
-
84e433ff63
fix(timeline): scroll-driven visibility scan, factor PhotoTile + SkeletonGrid
dtoro
2026-05-17 21:33:03 +02:00
-
d35de8a2a9
feat(web): /tags tabs + keyword surfacing + dup tab restyle
dtoro
2026-05-17 21:19:44 +02:00
-
d5e4f23c0f
feat(web): sidebar root folder + folder counts, drill-in colors/tags/ratings, click semantics rework
dtoro
2026-05-17 21:01:41 +02:00
-
5153aeebec
fix(sidecar): podman keep-id mapping so mutations land as the host user
dtoro
2026-05-17 18:23:37 +02:00
-
4362e475a7
build(sidecar): containerize + delete the Node prototype
dtoro
2026-05-17 17:23:36 +02:00
-
032dce6c85
feat(sidecar): port Node prototype to Go + Gin + GORM + MariaDB
dtoro
2026-05-17 17:15:47 +02:00
-
0766b47bb2
feat(sidebar): library + general settings dialogs, sidebar footer, alignment polish
dtoro
2026-05-17 16:51:56 +02:00
-
17df1ecd09
feat(preview): play videos inline in the lightbox overlay
dtoro
2026-05-17 16:51:46 +02:00
-
8c2526d982
feat: PhotoPrism M0 bring-up — compose stack, web client, sidecar, migrate
dtoro
2026-05-17 16:06:58 +02:00
-
-
423a73a8a6
fix(SettingsDialog): drop dead imports after AI tab removal
claudio
2026-05-14 00:28:14 +02:00
-
a27267f7ad
refactor: drop AI/vision pipeline + plain Postgres + full-refresh script
claudio
2026-05-14 00:20:38 +02:00
-
6915c30911
build(backend): cache torch wheel + pip downloads across rebuilds
claudio
2026-05-13 23:08:10 +02:00
-
4e1af0f356
refactor: simplify after self-review
claudio
2026-05-13 20:50:17 +02:00
-
5e2823ae94
feat(library): tighten duplicates scope, drop in-app upload, polish loaders
claudio
2026-05-13 20:44:36 +02:00
-
99edd7d395
ui(thumbs): remove the "date may be wrong" badge
root
2026-05-12 10:55:32 +02:00
-
ab3c55dd96
feat(topbar): drop search box to reclaim filter-bar space
root
2026-05-12 09:53:32 +02:00
-
c30b387dc3
feat(grid): user-configurable thumbnail size for grid views
root
2026-05-12 09:37:01 +02:00
-
347f58b4f3
perf(thumbs): pool NC client, smaller grid thumbs, eager owner load
Claudio
2026-05-12 00:30:43 +02:00
-
68bbe6f024
fix(compose): mount video_cache_data volume on backend + workers
Claudio
2026-05-12 00:09:25 +02:00
-
c4df92720b
feat(playback): pre-transcode HEVC videos in background; veryfast preset
Claudio
2026-05-12 00:03:15 +02:00
-
2a5270d399
fix(playback): force mp4 muxer; ffmpeg cant infer format from .tmp extension
Claudio
2026-05-11 22:52:36 +02:00
-
1b6ff45726
feat(playback): transcode HEVC .mov to H.264 MP4 on first hit
Claudio
2026-05-11 22:40:05 +02:00
-
09c12ea35b
fix(scan): only resurrect discards when file changed; add Saved toast
Claudio
2026-05-11 22:29:25 +02:00
-
abe5c1ec6b
fix(metadata-panel): apply mutation responses synchronously, no second GET
Claudio
2026-05-11 21:51:14 +02:00
-
ea08d7e3e8
fix(library/stats): exclude hidden photos from discarded count
Claudio
2026-05-11 21:13:26 +02:00
-
356062ead3
feat(date-guess): recognise YY-MM-DD HH-MM-SS Synology export filenames
Claudio
2026-05-11 20:56:47 +02:00
-
7a1c6b618b
fix(compose): propagate SECRET_KEY to all workers, not just backend
Claudio
2026-05-11 13:56:31 +02:00
-
5a67ed7e7b
feat(phase 4): vision fetches NC previews; stop writing /data/thumbs
Claudio
2026-05-11 13:52:52 +02:00
-
f4618ddf97
fix(rename): refresh Folder.name on webhook-driven directory rename
Claudio
2026-05-11 13:46:06 +02:00
-
2a5759cc8d
feat(metadata): read from NC Memories first, ExifTool subprocess as fallback
Claudio
2026-05-11 13:39:43 +02:00
-
f27f3cb820
fix(handle_directory_rename): iterate in Python — asyncpg rejected SUBSTRING(... FROM LENGTH(...)+1)
Claudio
2026-05-11 13:16:56 +02:00
-
f4a03b63f4
feat(nc-webhook): handle folder rename via NodeRenamedEvent
Claudio
2026-05-11 13:07:28 +02:00
-
94088253f8
fix(nc-webhook): propagate folder deletes + resurrect un-discarded files
Claudio
2026-05-11 12:50:52 +02:00
-
f657e2c0ba
feat: retire the watchfiles watcher in favour of NC webhooks
Claudio
2026-05-11 12:28:36 +02:00
-
362fbc6d83
feat(nc-webhook): receive Nextcloud file events instead of polling
Claudio
2026-05-11 12:19:59 +02:00
-
d24c64e0a0
fix(scan): stop auto-queuing backfill_gps on every startup
Claudio
2026-05-11 12:08:31 +02:00
-
18dce33fa3
fix(original): support HTTP Range so <video> can play .mov etc
Claudio
2026-05-11 12:02:44 +02:00
-
28738acb56
fix(backfill): drop offset-based pagination — it skipped filled rows
Claudio
2026-05-11 11:43:03 +02:00
-
576b0c236d
feat(thumbs): proxy Nextcloud previews instead of duplicating the cache
Claudio
2026-05-11 11:34:58 +02:00
-
9e9b1ba224
perf(preview): debounce full-res /proxy preload by 400ms
Claudio
2026-05-11 11:06:36 +02:00
-
11202a92e7
fix(preview): cull/pick shortcuts target the visible photo, not stale selection
Claudio
2026-05-11 10:47:02 +02:00
-
a0d275490b
ui(preview): preload thumbs for ±5 neighbors, not just adjacent
Claudio
2026-05-11 10:32:14 +02:00
-
6311412fc0
ui(preview): load 1280px thumb first, upgrade to full-res in bg
Claudio
2026-05-11 10:22:17 +02:00
-
611d445d92
ui(sidebar): ellipsize nextcloud-users/<user>/files prefix in path
claudio
2026-05-11 09:51:45 +02:00
-
f14ea69223
ui(duplicates): show grandparent + parent in path strip
Claudio
2026-05-11 00:49:02 +02:00
-
f290784bf3
ui(duplicates): show parent folder + full-path tooltip on each thumbnail
Claudio
2026-05-11 00:16:48 +02:00
-
f743733edd
ui(sidebar): drop Title field, add bulk notes editor
Claudio
2026-05-11 00:07:02 +02:00
-
c69322a89d
ui(sidebar): compact two-section panel, drop active-heap card
Claudio
2026-05-10 23:43:33 +02:00
-
f63daf16a8
fix(timeline): scroll to top on section / folder switch
Claudio
2026-05-10 23:25:48 +02:00
-
d580796dc8
fix(photos): accept bare-date filter bounds, send T00:00:00 from UI
Claudio
2026-05-10 23:16:09 +02:00
-
7b153f0d28
fix(metadata): drop EXIF:ModifyDate fallback, prefer SubSec, fall back to path
Claudio
2026-05-10 23:02:32 +02:00
-
76551d898b
fix(nextcloud): NULL parent_id on cross-source-root child folders + spinner
Claudio
2026-05-10 22:37:12 +02:00
-
89f99d220a
fix(photos): coerce tz-aware taken_at to naive UTC before DB write
Claudio
2026-05-10 22:32:44 +02:00
-
63dd39d172
fix(nextcloud): NULL parent_id before deleting Folder rows on SourceRoot remove
Claudio
2026-05-10 22:30:34 +02:00
-
09a00f7419
feat(nextcloud): hard-delete SourceRoot + reliable delete sync
Claudio
2026-05-10 22:19:58 +02:00
-
99d504842e
feat(auth): auto-redirect to Authentik when OIDC enabled
Claudio
2026-05-10 21:59:15 +02:00
-
eeeb16a0f1
ui(sidebar): split editable vs read-only between Edit and Metadata
Claudio
2026-05-10 21:49:44 +02:00
-
1695eae226
ui(sidebar): wrap edit form in collapsible, drop Header X button
Claudio
2026-05-10 21:43:33 +02:00
-
172f869e15
ui(sidebar): pin heap, single scroll area, collapsible metadata group
Claudio
2026-05-10 21:36:18 +02:00
-
1408ec3fa3
perf(db): partial index for the photos list query
Claudio
2026-05-10 21:28:28 +02:00
-
b1c3ee68dd
perf(ui): smaller initial page, slower idle polling
Claudio
2026-05-10 21:28:16 +02:00
-
4bb2c959a8
fix(cleanup): distinguish renamed source root from unmounted drive
Claudio
2026-05-10 21:24:28 +02:00
-
758fda619e
fix(raw): PIL fallback for iPhone Apple ProRAW / Linear DNG
Claudio
2026-05-10 21:20:53 +02:00
-
0eee0cecde
perf(backend): drop uvicorn --reload, run 2 workers in compose
Claudio
2026-05-10 21:09:51 +02:00
-
4b137989c6
fix(auth): drop competing 401 interceptor in api.ts
Claudio
2026-04-26 11:14:45 +02:00
-
f811aae641
fix(sidebar): show Settings entry to non-admin users
Claudio
2026-04-26 09:59:24 +02:00
-
e4127f1e04
fix(library): scope source_dirs to current user in /stats
Claudio
2026-04-26 09:46:54 +02:00
-
4c7e981daf
feat(settings): open Library + AI tabs to non-admin users
Claudio
2026-04-26 09:45:21 +02:00
-
65f6c14487
fix(nextcloud): pin cloud.hubris.network to LAN caddy IP in compose
Claudio
2026-04-26 08:17:52 +02:00
-
bc0bb44c05
feat(nextcloud): per-user Nextcloud library integration
Claudio
2026-04-26 01:06:37 +02:00
-
80dd9d0a8b
feat(auth): OIDC link by preferred_username (opt-in)
root
2026-04-22 22:24:13 +02:00
-
e8e1adcf37
feat(auth): Authentik OIDC sign-in + Gravatar avatars
dtoro
2026-04-22 21:06:32 +02:00
-
319be20389
feat(sharing): pending-state invites, notification bell, sidebar polish
dtoro
2026-04-21 23:17:53 +02:00
-
11343c17dc
ui(sharing): rework share dialog around the Drive/Notion pattern
dtoro
2026-04-21 22:34:29 +02:00
-
3c022cef68
ui(timeline): auto-focus first photo on every section switch
dtoro
2026-04-21 22:21:29 +02:00
-
b6be24c357
ui(sharing): redesign share dialog with clearer structure + affordances
dtoro
2026-04-21 22:15:44 +02:00
-
b518a293cd
fix(duplicates): reserve 160px row height so thumbnails don't shift on load
dtoro
2026-04-21 22:15:38 +02:00
-
b7f2eb7832
ui(timeline): drop redundant tints in discarded + active-heap views
dtoro
2026-04-21 21:56:07 +02:00
-
96624bf853
fix(duplicates): hoist memo hooks above early returns
dtoro
2026-04-21 21:49:32 +02:00
-
b9916866b3
ui(footer): move "Built with hubris" byline into LeftSidebar
dtoro
2026-04-15 22:11:00 +02:00
-
68d8a6d064
fix(sidebar): exclude watch_folders heartbeat from active task count
dtoro
2026-04-15 21:31:06 +02:00
-
e6ca78881f
ui(layout): move Date filter inputs to topbar, Active Heap to right sidebar
dtoro
2026-04-15 21:21:57 +02:00
-
c5582ffc65
ui(sidebar): collapsible Library section with Heaps nested inside
root
2026-04-15 20:48:20 +02:00
-
eac005109c
feat(filters): move date picker to sidebar, track visible photo order
root
2026-04-15 17:12:34 +02:00
-
45f1649979
ui: uniform 160px thumbnail cells across all grid views
root
2026-04-15 15:41:40 +02:00
-
66b3bc5e1f
perf+ux: cheaper sidebar toggle, virtualised filmstrip, compact toasts
root
2026-04-15 15:24:32 +02:00
-
d72a218b46
feat: full shortcut parity + perf fixes across memories and duplicates
root
2026-04-15 11:51:13 +02:00
-
744a7fa0c3
feat(memories): use Timeline's PhotoThumbnail grid
dtoro
2026-04-15 10:57:29 +02:00
-
967cf23b82
feat(sharing): user picker in share dialog
dtoro
2026-04-15 10:34:09 +02:00
-
a073ee7fb9
perf+style: grid subscription hygiene, a11y, shadcn-style consistency
dtoro
2026-04-15 10:30:16 +02:00
-
e65e798021
perf+ux: cut grid re-renders, coalesce discard, dedup bulk mutations
dtoro
2026-04-15 10:13:39 +02:00
-
7efac4354e
ui: migrate to shadcn/ui primitives across dialogs, filters, and forms
dtoro
2026-04-15 09:07:20 +02:00
-
8529771122
ui: rework selection/heap visuals, contextual shortcut hints, inline scan activity
dtoro
2026-04-14 23:45:36 +02:00
-
a6eb406052
ui: tidy sidebar tree indent and consolidate sidebar toggles into filter bar
dtoro
2026-04-14 22:31:10 +02:00
-
574d71371f
refactor: strip AI pipeline to binary photo/other classifier
dtoro
2026-04-14 22:27:17 +02:00
-
5c531f11da
feat: runtime feature flags, upload/download, RAW decoding
root
2026-04-14 21:31:52 +02:00
-
800ee447ad
perf: native canvas markers for map view, drop clustering library
root
2026-04-13 16:17:32 +02:00
-
7c68e1400b
fix: map view freezing browser with thousands of markers
root
2026-04-13 15:53:58 +02:00