-
581719401e
Merge feature/s3-dynamic-facets: dynamic faceted filter chips
peter
2026-06-15 12:25:10 +02:00
-
-
aa4b069567
feat(filters): make the topic Any/All match toggle prominent
peter
2026-06-15 12:20:17 +02:00
-
64911e3c4d
fix(feed): conjunctive facet counts when topic match mode is AND
peter
2026-06-15 12:20:08 +02:00
-
5656875a07
feat(filters): sort facet chips by count, then name
peter
2026-06-15 12:10:09 +02:00
-
79f53ccf59
feat(filters): dynamic faceted chips driven by /api/facets
peter
2026-06-15 12:06:02 +02:00
-
79e7694b24
feat(feed): /api/facets endpoint for contextual tag counts
peter
2026-06-15 12:05:53 +02:00
-
-
bd2e39d6f8
Merge: promote dev to prod
peter
2026-06-15 04:32:05 +02:00
-
-
6a11dd1158
Merge improvement/deep-queue-chip-clarity: clearer deep-backfill status
peter
2026-06-15 04:31:56 +02:00
-
-
cb35b0e86e
improvement(sync): reflect deep backfill as active in the header status
peter
2026-06-15 04:30:27 +02:00
-
5fba327d24
improvement(channels): distinct label for full-history queued by another user
peter
2026-06-15 04:23:49 +02:00
-
-
5db515f644
Merge feature/s2-shared-library: shared-library feed scope
peter
2026-06-15 04:14:48 +02:00
-
-
db4a7c0440
feat(feed): shared-library scope toggle in the header
peter
2026-06-15 04:06:22 +02:00
-
e91ded61bb
feat(feed): add scope=all to browse the whole shared catalog
peter
2026-06-15 04:06:14 +02:00
-
-
44ef725a2e
Merge feature/s1-filter-quick-wins: reshuffle button + channel counts on chips
peter
2026-06-15 03:10:40 +02:00
-
-
5a96607557
feat(feed): reshuffle button for the "surprise me" sort
peter
2026-06-15 03:08:10 +02:00
-
b325893b22
feat(filters): show channel counts on topic and language chips
peter
2026-06-15 03:08:03 +02:00
-
-
6c8b9d6986
fix(version): VERSION-file as source of truth
peter
2026-06-15 02:22:27 +02:00
-
-
07f04b8f90
fix(version): read app version from the committed VERSION file
peter
2026-06-15 02:22:27 +02:00
-
e98e2cbdd5
Release v0.1.0: watch progress, status bar, version/release-notes, i18n (HU/EN/DE)
peter
2026-06-15 02:09:22 +02:00
-
-
53708891b3
docs(release): note multilingual UI in v0.1.0 release notes
peter
2026-06-15 02:09:22 +02:00
-
cdc15ad1f9
feat(channels): clearer error when a YouTube action lacks the scope
peter
2026-06-15 02:02:05 +02:00
-
ea317c0009
feat(i18n): translate remaining components (HU/EN/DE)
peter
2026-06-15 00:47:04 +02:00
-
941fb7d756
feat(i18n): translate login and app chrome (HU/EN/DE)
peter
2026-06-15 00:30:34 +02:00
-
7aa068061d
feat(i18n): foundation — react-i18next, language switcher, server-persisted choice
peter
2026-06-15 00:30:34 +02:00
-
844fed7d2f
Merge: release notes, About dialog, and version stamping
peter
2026-06-15 00:07:13 +02:00
-
-
82f0936ca7
feat(ui): About dialog, Release Notes, and new-version banner
peter
2026-06-15 00:06:57 +02:00
-
a93ab30fb2
feat(version): /api/version + build-time version/commit stamping
peter
2026-06-15 00:06:57 +02:00
-
-
5dd3109286
Merge: repo hygiene for public readiness
peter
2026-06-14 23:20:02 +02:00
-
-
167ebc74d8
chore(repo): remove internal deployment plan, sanitize infra references
peter
2026-06-14 23:20:02 +02:00
-
-
21b9e2710e
Merge: auto-complete full history when stored >= video_count
peter
2026-06-14 19:01:04 +02:00
-
-
75d122de75
fix(backfill): auto-complete full history when stored >= video_count
peter
2026-06-14 19:01:04 +02:00
-
-
6683720ab8
Merge: header video-count clarity + idle pause hidden
peter
2026-06-14 18:43:11 +02:00
-
-
88e3b466b0
Merge: watch progress (resume bar, continue/restart, in-progress filter)
peter
2026-06-14 18:43:11 +02:00
-
-
b4109909db
feat(header): clarify video counts and hide idle pause button
peter
2026-06-14 18:42:55 +02:00
-
-
-
04c971f623
feat(feed): resume progress bar, play/continue/restart, in-progress filter
peter
2026-06-14 18:40:12 +02:00
-
686c40cbb9
feat(progress): track per-user resume position server-side
peter
2026-06-14 18:40:05 +02:00
-
-
a16e613fe9
Release: onboarding auto-import, per-user header, channel status filter, stable priority, Phase B security fixes
peter
2026-06-14 07:14:54 +02:00
-
-
bc87b3abdc
Merge: channel status filter, header full-history link, stable priority
peter
2026-06-14 07:08:59 +02:00
-
-
3f7298cca0
feat(channels): status filter + header full-history link + stable priority
peter
2026-06-14 07:08:59 +02:00
-
-
00d167506d
Merge: per-user header sync status
peter
2026-06-14 06:55:18 +02:00
-
-
6d2f84f791
fix(header): show per-user sync status instead of the global catalog
peter
2026-06-14 06:55:18 +02:00
-
-
930381f2d4
Merge: onboarding auto-import + empty-feed guidance
peter
2026-06-14 06:36:12 +02:00
-
-
4f80262046
feat(onboarding): auto-import subscriptions after read grant + empty-feed guidance
peter
2026-06-14 06:36:12 +02:00
-
-
027b8492ee
Merge: Phase B security fixes
peter
2026-06-14 05:59:34 +02:00
-
-
1eeaad61d9
fix(security): patch cryptography CVEs, upgrade pip at build, harden /auth/upgrade
peter
2026-06-14 05:59:34 +02:00
-
-
842c6d800e
Merge: rebrand to Siftlode
peter
2026-06-14 04:40:22 +02:00
-
-
9ace042510
chore: rebrand Subfeed -> Siftlode
peter
2026-06-14 04:40:22 +02:00
-
-
53307ea206
Merge onboarding wizard, scope split, hardening, legal pages, and deploy setup
peter
2026-06-14 01:39:43 +02:00
-
-
a322f87caf
chore(deploy): hardened prod compose, rollout script, and CI for the server
peter
2026-06-14 01:39:43 +02:00
-
6a71e3d943
feat(legal): public privacy policy, terms, and homepage for OAuth verification
peter
2026-06-14 01:29:44 +02:00
-
e0980487af
feat(onboarding): first-login wizard for incremental YouTube consent
peter
2026-06-14 01:11:29 +02:00
-
4765db89de
feat(auth): split base sign-in from YouTube scopes for incremental onboarding
peter
2026-06-13 23:56:34 +02:00
-
-
9163a5f68e
Merge: smoother long-feed scrolling
peter
2026-06-12 18:17:03 +02:00
-
-
a8e98d03ae
perf(feed): smoother scrolling for long feeds
peter
2026-06-12 18:17:03 +02:00
-
-
203624518d
Merge: stop stale toasts resurrecting on reload
peter
2026-06-12 18:07:31 +02:00
-
-
a64a8830eb
fix(notifications): don't resurrect stale toasts on reload
peter
2026-06-12 18:07:31 +02:00
-
-
6d9a485c21
Merge robust avatar loading (no-referrer + fallback)
peter
2026-06-12 18:01:43 +02:00
-
-
a640b181ee
fix(ui): robust avatars — no-referrer + graceful fallback
peter
2026-06-12 18:01:43 +02:00
-
-
473171d1b4
Merge inline modal YouTube player
peter
2026-06-12 17:39:56 +02:00
-
-
db0ffc3717
fix(feed): clear optimistic overrides on refetch
peter
2026-06-12 17:39:28 +02:00
-
d5dab5377f
feat(notifications): notify on 'watched' with an Unwatch action
peter
2026-06-12 17:39:28 +02:00
-
1bdde051c1
feat(player): linkify descriptions and play YouTube links inline
peter
2026-06-12 17:39:20 +02:00
-
195044042f
feat(player): polish the description popover (opaque, portaled, opens upward)
peter
2026-06-12 17:39:08 +02:00
-
fcb77ac2e1
feat(player): watched controls, compact layout, description popover
peter
2026-06-12 17:39:01 +02:00
-
99dfa7691c
feat(player): in-app modal YouTube player with resume
peter
2026-06-12 17:38:45 +02:00
-
-
d0b8ef796a
fix(sidebar): resolve channel filter name from channel list after refresh
peter
2026-06-12 14:08:49 +02:00
-
adeb0a6160
merge: per-user quota attribution + admin stats page
peter
2026-06-12 02:47:55 +02:00
-
-
f255728f75
feat(stats): per-user API quota attribution + admin usage page
peter
2026-06-12 02:47:55 +02:00
-
-
bcc4371ac7
merge: full-history chip reflects shared deep-queue state
peter
2026-06-12 02:29:10 +02:00
-
-
de0decee59
fix(channels): reflect shared deep-queue state in the full-history chip
peter
2026-06-12 02:29:10 +02:00
-
-
0c76730797
merge: friendlier onboarding emails + deliverability headers
peter
2026-06-12 02:05:18 +02:00
-
-
8135527d75
fix(email): warmer onboarding copy + Reply-To/Date headers
peter
2026-06-12 02:05:18 +02:00
-
-
a92112cefb
merge: M5c — onboarding (DB invites, request-access, admin approval, email)
peter
2026-06-12 01:43:14 +02:00
-
-
2add173760
feat(m5c): onboarding — DB invites, request-access, admin approval, email
peter
2026-06-12 01:43:07 +02:00
-
-
5754f47f20
merge: fix recent/deep boundary-page video loss
peter
2026-06-12 00:15:20 +02:00
-
-
18aa3726fb
fix(backfill): don't skip the tail of the recent/deep boundary page
peter
2026-06-12 00:15:20 +02:00
-
-
69e9c60ca1
merge: immediate recent backfill on full-history opt-in
peter
2026-06-12 00:00:50 +02:00
-
-
15007250db
feat(channels): kick recent backfill immediately on 'full history' opt-in
peter
2026-06-12 00:00:50 +02:00
-
-
c8a50472f3
merge: M5b — optional YouTube write scope (incremental OAuth)
peter
2026-06-11 23:27:17 +02:00
-
-
43c05ea14b
feat(m5b): optional YouTube write scope via incremental OAuth
peter
2026-06-11 23:27:11 +02:00
-
-
f4b8a721fb
merge: M5d — demand-driven deep backfill + per-user ETA
peter
2026-06-11 23:07:15 +02:00
-
-
beb961c021
feat(m5d): demand-driven deep backfill + per-user ETA
peter
2026-06-11 23:07:09 +02:00
-
-
bbcfd46ea9
merge: M5a — channel manager, settings panel, per-user sync, liquid-glass UI
peter
2026-06-11 22:52:23 +02:00
-
-
0a6befd578
style(ui): glass opacity 82% -> 78%
peter
2026-06-11 22:49:04 +02:00
-
94a077d699
fix(ui): restore glass translucency (82%) — opaque value killed the effect
peter
2026-06-11 22:45:14 +02:00
-
f429889250
fix(ui): opacity-based frosted glass; drop full-page settings blur
peter
2026-06-11 22:39:52 +02:00
-
4a35e8b42a
fix(ui): stronger frosted glass + frosted settings backdrop; declutter header
peter
2026-06-11 22:16:07 +02:00
-
b7d448b403
perf(ui): drop backdrop-filter from bulk glass cards
peter
2026-06-11 22:04:01 +02:00
-
3f4d5ed9d7
fix(dev): vite proxy to 127.0.0.1 + throttle error notifications
peter
2026-06-11 22:00:57 +02:00
-
bc9b9a854c
fix(ui): portal tooltips, opaque glass, settings rail+stable height, notif test, channel help
peter
2026-06-11 21:30:25 +02:00
-
002579e5e5
feat(ui): liquid-glass design system, settings polish, hints, notif fixes
peter
2026-06-11 21:08:35 +02:00
-
a8822d3935
feat(m5a): channel manager, tabbed settings panel, per-user sync status
peter
2026-06-11 20:45:48 +02:00
-
-
b8a8605797
merge: M4 polish — sidebar widgets, URL state, notification center, account menu
peter
2026-06-11 19:59:26 +02:00
-
-
a419ac2943
fix(ui): notification UX — outside-click close, toast countdown, hide entry actions
peter
2026-06-11 19:46:58 +02:00
-
a105e5c184
feat(ui): notification center with leveled toasts and error capture
peter
2026-06-11 19:26:34 +02:00
-
ae0cd89e20
feat(ui): customizable sidebar — collapsible, reorderable, toggleable widgets
peter
2026-06-11 19:21:48 +02:00
-
98025d8fab
feat(ui): reflect filters/sort/search in the URL
peter
2026-06-11 19:17:08 +02:00
-
3e1823b08b
feat(ui): account hover-popup, upload-date chips, top clear-filters bar
peter
2026-06-11 17:39:24 +02:00
-
3afb284d46
chore(frontend): add package-lock.json for reproducible installs
peter
2026-06-11 17:39:24 +02:00
-
-
6120e6b0f8
merge: shared-database deployment (24/7 backfill)
peter
2026-06-11 16:59:09 +02:00
-