
Show HN: Joyscroller – Automatically download and archive your liked videos
Automatically download the videos you like on TikTok, YouTube and Instagram, and keep them forever.
以下正文同步自 Hacker News 最新,版权归原站所有,已转换为易读排版。
Automatically download the videos you like on TikTok, YouTube and Instagram, and keep them forever.
You've liked thousands of videos. Some get deleted, some go private, and the rest sink to the bottom of a feed you'll never scroll back through. Joyscroller saves a copy of each one to your own computer, so the videos you loved are still yours long after the app moves on.
You need a Mac or Linux, and Brave signed in to YouTube, TikTok and Instagram.
Download the latest .dmg from Releases: macos-arm64 for Apple Silicon (M1 and later), macos-x86_64 for an Intel Mac.
Open it and drag Joyscroller onto Applications.
Open Joyscroller. It isn't signed by Apple, so the first time macOS says "Joyscroller" Not Opened because Apple could not verify it. Click Done, not Move to Trash. Then open System Settings → Privacy & Security, scroll to the bottom and click Open Anyway.
Joyscroller opens in your browser at http://127.0.0.1:4774. It has no window or Dock icon of its own; open the app again to get back to it.
macOS asks for your Mac's password so Joyscroller can use your browser's "Safe Storage" key in the Keychain. That's how it reads your logins: type your password and click Always Allow. After each update it asks once more.
Your videos are saved in Movies/Joyscroller in your home folder, and everything else in Library/Application Support/Joyscroller. To stop it, click Turn off at the end of its taskbar.
Download the latest joyscroller-…-linux-x86_64.tar.gz from Releases (aarch64 if your computer has an ARM chip).
Unpack it wherever you'd like to keep your videos, and start it:
tar -xzf joyscroller--linux-x86_64.tar.gz cd joyscroller--linux-x86_64 ./joyscroller
Open http://127.0.0.1:4774 and watch your likes roll in.
Keep it running to stay up to date. To stop it, click Turn off at the end of its taskbar, or press Ctrl-C. Your library is saved right next to the app: joyscroller.db and a downloads folder. Move the folder and your library moves with it.
Videos are saved as the platform serves them, at their best quality, and most come in formats only some browsers play. So Joyscroller also makes a playback.mp4 beside each of those, in H.264 at the same resolution, which plays in any browser: on a phone, a tablet or a car. It works on one video at a time in the background, at low priority.
The first time it starts, Joyscroller fetches the helpers it downloads videos with (yt-dlp, plus ffmpeg and bun if you don't already have them) into a tools folder beside its database, and keeps them up to date. There's nothing else to install.
git clone https://github.com/sergiotapia/joyscroller.git cd joyscroller cargo run --release
Built this way, your library is saved in the data folder inside joyscroller.
cargo run
Then open http://127.0.0.1:4774. That runs against your real archive in data/. To experiment without touching it, run a copy of the app from a throwaway folder, which keeps its own database, downloads and tools there:
mkdir -p /tmp/joyscroller-dev && cp target/debug/joyscroller /tmp/joyscroller-dev/ && /tmp/joyscroller-dev/joyscroller
The debugging subcommands (likes, sync, download, cookies, tools) are listed in AGENTS.md. They use the app's own yt-dlp and ffmpeg once it has fetched them, and otherwise whatever is on your PATH.
CI checks every pull request on Linux, macOS and Windows, and builds and smoke-tests the Linux and macOS downloads. Pushing a version tag runs the same checks and builds and publishes them as a release (see .github/workflows/release.yml). Run just precommit before every commit. CONTRIBUTING.md has the conventions, and AGENTS.md has the architecture and data model.
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。