← Projects
web app2026

Archiver.

Save a video, keep it after it's gone.

Bookmarking a video saves a link, and a link is worthless the day the video comes down. I wanted the file itself somewhere I already keep things I care about, so this puts the video into a Notion database alongside its metadata.

01

Saving a video is the whole interaction

Sign in with Google and connect a Notion database once. After that, saving a video to a playlist is the trigger, which means it works from a phone, a laptop, or a TV without a browser extension or anything installed.

The Tally dashboard for a signed-in user, showing Google connected, Notion ready, counts of archived and queued videos, and a list of recently liked YouTube videos waiting to be archived.
Connect once, then liked videos queue up on their own.
02

The file, not just a link

The video is downloaded at the best resolution that still fits under Notion's file size cap, then uploaded and filed as a row with its metadata. The archive keeps working after the original is taken down, which is the entire point.

A Notion database titled Video Archive listing archived YouTube videos as rows, each with the video's title, its downloaded mp4 file, the date archived, a category, and the channel.
Each video filed as a Notion row, mp4 and all.
03

A front door and a worker

Downloading a multi-gigabyte video and muxing it was never going to survive a serverless function's time limit and disposable disk. So the portal only collects credentials, a persistent worker does the actual downloading, and a Postgres database sits between them as the queue and the ledger.

04

Everyone lands in their own Notion

Credentials are stored per user and encrypted, and each person's videos are archived into the database they connected. Nothing is pooled into a shared archive.

The Tally settings page showing a connected Notion database, with fields for a Notion integration secret and a database link.
Each person connects their own Notion, with their own key.
Built with
Next.js·Python·yt-dlp·ffmpeg·Postgres·Notion API·Raspberry Pi