2026-06-11 02:19:47 +02:00
|
|
|
<!doctype html>
|
|
|
|
|
<html lang="en" data-theme="dark" data-scheme="midnight">
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="utf-8" />
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
2026-07-04 06:17:40 +02:00
|
|
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
2026-07-07 20:19:30 +02:00
|
|
|
<!-- OG:START — the server replaces this block for /watch/{token} so shared links unfurl with
|
|
|
|
|
the video's title/channel/thumbnail; every other route keeps these generic defaults. -->
|
|
|
|
|
<!--OG:START-->
|
chore: rebrand Subfeed -> Siftlode
Rename all user-facing references (UI wordmark Sift+lode, titles, app name,
legal pages, onboarding wizard, emails, README/docs) and infra paths
(/srv/subfeed -> /srv/siftlode, image tag, deploy script, backup filenames).
Internal identifiers kept on purpose: Postgres user/db "subfeed", logger
namespace, localStorage keys, and the subfeed_pgdata volume (renaming would
orphan the migrated production data).
2026-06-14 04:40:22 +02:00
|
|
|
<title>Siftlode</title>
|
2026-07-04 18:17:24 +02:00
|
|
|
<meta
|
|
|
|
|
name="description"
|
2026-07-07 20:19:30 +02:00
|
|
|
content="A self-hosted, multi-user reader, subscription organizer and media center with download capabilities."
|
2026-07-04 18:17:24 +02:00
|
|
|
/>
|
|
|
|
|
<meta property="og:title" content="Siftlode" />
|
|
|
|
|
<meta
|
|
|
|
|
property="og:description"
|
2026-07-07 20:19:30 +02:00
|
|
|
content="A self-hosted, multi-user reader, subscription organizer and media center with download capabilities."
|
2026-07-04 18:17:24 +02:00
|
|
|
/>
|
|
|
|
|
<meta property="og:type" content="website" />
|
2026-07-07 20:19:30 +02:00
|
|
|
<!--OG:END-->
|
2026-06-11 02:19:47 +02:00
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<div id="root"></div>
|
|
|
|
|
<script type="module" src="/src/main.tsx"></script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|