Commit Graph

8 Commits

Author SHA1 Message Date
Gan, Jimmy 77c6a9d963 sprint: fixes batch — saveNote history, DeepSeek retry, channel rotation, test fixes, docker env, blocking transcript, sync errors 2026-06-28 17:08:32 +08:00
Gan, Jimmy d87c2aba44 feat: RSS hybrid fetcher — 221 channels, 2,414 videos, ~50 units (was 2,000) 2026-06-24 02:47:34 +08:00
Gan, Jimmy d5af5e9b7d feat: rotate 50 channels daily — covers all 229 over 5 days 2026-06-24 02:38:04 +08:00
Gan, Jimmy 8ce359764f feat: 50 channels, daily 3AM cron sync, countdown timer, remove manual button 2026-06-24 02:35:22 +08:00
Gan, Jimmy 1c4f9dc713 fix: decode HTML entities in titles; add note timestamps; reorder layout — title first, AI digest below 2026-06-24 02:18:18 +08:00
Gan, Jimmy a0ffa41c9e feat: replace yt-dlp cookies with YouTube Data API v3 OAuth
- Add auth.py: OAuth credential manager with auto-refresh
- Rewrite fetcher.py: use googleapiclient subscriptions/search
- Add google-auth, google-api-python-client dependencies
- Update docker-compose for config volume mount
- Add .gitignore for secrets (client_secret.json, token.pickle)
- Live test: 198 videos ingested from 229 channels
2026-06-24 00:14:16 +08:00
Gan, Jimmy dba070531e Add --extractor-args youtubetab:skip=authcheck to yt-dlp to bypass blocking
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 13:55:09 +08:00
Gan, Jimmy dbd3dc0237 Initial commit: Add T YouTube text-based reader web app
- FastAPI backend running on port 8000
- Svelte 5 runes frontend dashboard supporting Read/Skip state toggles
- YouTube subscription feed scraper using yt-dlp & Netscape cookies.txt
- Transcript downloader and Claude 3.5 Haiku summarizer via bytecatcode proxy
- Multi-stage Dockerfile and docker-compose.yml configuration

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 11:00:34 +08:00