LikeVault is a local-first browser extension for building a searchable archive of TikTok likes and favourites. It runs against the TikTok page you already have open, saves records in the extension's IndexedDB database, and gives you an option to either export the data, or use the built in archive browser, with the ability to search, filter and sort.
- Why this exists
- Screenshots
- What it does
- How the workflow fits together
- Privacy and data handling
- Install for local use
- Project layout
- Development
- License
TikTok does not give you any way to search, filter, or sort the content that you liked or favourited. The only way is to endlessly scroll every time you try to find something.
Why this extension and not some other one? The most popular alternative - myfaveTT, is auto-downloading the tiktoks that it saves. There is no option to disable the downloading and only gather information. It also doesnt support Firefox.
LikeVault does everything locally. It reads the likes or favourites page, watches TikTok item-list responses already loaded by that tab, and saves normalized post records locally. When a record is missing some fields, the repair flow can open TikTok detail pages in a helper tab and fill in what it can.
It does not download the actual TikTok video files. The archive is metadata: post URLs, IDs, creator names, captions, cover URLs, upload fields, view labels, status fields, and timestamps.
| Main page | Settings |
|---|---|
![]() |
![]() |
| Archive |
|---|
![]() |
- Crawls your TikTok Likes or Favourites page in Chrome or Firefox.
- Captures records from visible page content and TikTok item-list responses loaded in that tab.
- Stores archive records locally in IndexedDB.
- Lets you pause, resume, stop, and tune crawl settings like scroll step and plateau threshold.
- Repairs partial records by visiting TikTok detail pages in a helper tab.
- Includes a full archive page with search, filters, sorting, paging, and card-size controls.
- Imports and exports archive data as JSON or CSV.
At a high level:
- Build and load the extension for Chrome or Firefox.
- Open your TikTok Likes or Favourites page in the same browser.
- Start a crawl from the LikeVault side panel or Firefox sidebar.
- Let the crawl scroll until it reaches a plateau, or stop it manually.
- Repair missing records if you want richer metadata.
- Search the archive, filter it, and export JSON or CSV when needed.
The extension uses your existing TikTok browser session. It does not ask you to log in through a separate LikeVault service.
flowchart LR
A["Browser side panel or sidebar"] --> B["Content script on tiktok.com"]
B --> C["Visible page records"]
B --> D["TikTok item-list responses"]
C --> E["Normalized archive records"]
D --> E
E --> F["Local IndexedDB storage"]
F --> G["Archive search and filters"]
F --> H["JSON or CSV export"]
F --> I["Optional repair helper tab"]
- LikeVault is built around local browser storage.
- Active archive records are stored in the extension's IndexedDB database.
- Runtime crawl state and temporary values use extension local storage.
- Export files are created only when you choose to export them.
- It does not connect to any external server.
- The privacy disclosure lives in PRIVACY.md.
- Chrome or Firefox
- An active TikTok login in that browser
- Node.js
node scripts/build-extension.jsThe build script writes browser-specific unpacked extension folders to dist/chrome and dist/firefox.
- Open
chrome://extensions. - Enable
Developer mode. - Click
Load unpacked. - Select
dist/chrome.
Chrome opens LikeVault through the extension side panel.
- Open
about:debugging#/runtime/this-firefox. - Click
Load Temporary Add-on.... - Select
dist/firefox/manifest.json.
Firefox opens LikeVault through the extension sidebar.
assets/
icons/ extension icons used by the generated browser builds
readme/ README logo and public README assets
extension/
archive/ full archive page for search, filters, import, export, and clearing
lib/ shared browser API, IndexedDB, and normalization helpers
manifests/ Chrome and Firefox manifest overrides
sidepanel/ main crawl, repair, settings, and recent-results UI
content_script.js
manifest.base.json
network_bridge.js
service_worker.js
scripts/
build-extension.js
dist/ is generated by the build script and is intentionally not tracked in git.
Useful commands:
node scripts/build-extension.jsThe build command merges extension/manifest.base.json with the target files in extension/manifests/, copies the extension source and icons, and writes final manifests into dist/chrome and dist/firefox.
There is no package install step in this repo at the moment. The build script uses Node's built-in modules.
This project is licensed under the GNU General Public License v3.0. See LICENSE for the full text.



