I save tweets and LinkedIn posts and never find them again. There’s no search and no way back to them six months later when I actually need one. I wanted a local library that kept my saved posts useful.
Snippet Search is a local app. An Express backend indexes everything into SQLite with full-text search. Playwright scrapers pull posts from X and LinkedIn directly, with an X API sync and CSV import as fallbacks for when the scraping breaks.
Everything is mirrored into a Markdown vault, so Obsidian and Claude Code can read the library without going through a database. There’s an optional chat on top, wired to Claude, with a model switcher that shows what each query costs. It runs as an installable PWA on localhost, starts on login and needs no API key by default.
It’s still running and still getting features: sync improvements, a links view and autostart fixes. It won’t get a public URL. It scrapes my own saved posts using methods LinkedIn doesn’t want used, which is fine for a personal tool and not something to ship.
The screenshot is the real UI, seeded with eight made-up posts instead of my actual library.