siftlode/backend/app/downloads
npeter83 8591e45747 feat(share): rich link previews (Open Graph) for /watch pages
A shared /watch/{token} link is a client-rendered SPA, so a social crawler only
saw the generic index.html — a blank link card. The server now injects per-video
Open Graph / Twitter tags (title, channel, thumbnail) into the served HTML for
that route, so links unfurl richly in Messenger and other chat apps; real
browsers ignore the extra tags and hydrate the page as usual. Password /
expired / invalid links fall back to the generic card with no metadata leak.

Also shortens the generic site description used for search engines and link
previews.
2026-07-07 20:19:30 +02:00
..
__init__.py fix(downloads): add the downloads package (was wrongly gitignored) + robust sanitizer 2026-07-03 00:19:22 +02:00
edit.py feat(downloads): editor concat — multi-segment join (cut-list) 2026-07-04 03:15:45 +02:00
formats.py fix(downloads): prefer H.264+AAC for mp4 so shared files play on iOS/Safari 2026-07-04 17:29:05 +02:00
gc.py feat(downloads): M3 — per-user quota + retention GC 2026-07-03 00:26:40 +02:00
links.py feat(downloads): editable details with clickable channel and extra links 2026-07-07 20:19:18 +02:00
og.py feat(share): rich link previews (Open Graph) for /watch pages 2026-07-07 20:19:30 +02:00
quota.py feat(downloads): M4 — REST API (enqueue, manage, file-serve, sharing, admin) 2026-07-03 00:34:08 +02:00
service.py feat(downloads): editor backend — trim/crop derivatives (phase 2) 2026-07-04 01:01:46 +02:00
storage.py feat(downloads): editor backend — trim/crop derivatives (phase 2) 2026-07-04 01:01:46 +02:00