Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TV Time Data Recovery

CI Deploy Pages Web app License: WTFPL

Recover your library and watch history from the TV Time Android app's local cache (DioCache.db) and export it to CSV.

TV Time's Android app (com.tozelabs.tvshowtime) keeps a local SQLite cache of the API responses it has seen. When the online service is unavailable, that cache is often the only remaining copy of your data. This project parses it back into usable CSV files.

If that cache (DioCache.db) has been cleared and reads as empty, the tool also recovers a name-level library and your "up next" list from the app's Flutter preferences (shared_prefs/FlutterSharedPreferences.xml and HomeWidgetPreferences.xml). You can hand it the whole tvtime-private.tar you pulled from the phone and it will find and merge whatever it can.

Not affiliated with or endorsed by TV Time. This recovers only data that is still cached locally on your device; it is not an official export and completeness depends entirely on what your device kept.

Three ways to use it

  • Web app (recommended, no install): upload your DioCache.db, the whole tvtime-private.tar, or your shared_prefs files and download CSVs. Everything is processed entirely in your browser and is never uploaded anywhere.
  • CLI: tvtime-recover <inputs...> --out ./tvtime-export (or --zip out.zip), where each input is a DioCache.db, a tvtime-private tar/zip, or a prefs .xml.
  • Library (tvtime-core): recover_files({name: bytes}) (or recover(db_bytes) for a single DioCache) for use in your own scripts.

Getting your DioCache.db

Extracting the app's private database from an Android phone is the hard part and depends on your device. See docs/extraction-guide.md.

Repository layout

packages/tvtime-core/   # pure, stdlib-only parser library
packages/tvtime-cli/    # command-line front end
web/                    # static site (Pyodide runs tvtime-core in the browser)
docs/                   # extraction guide and design docs

Development

uv sync
uv run ruff check
uv run mypy
uv run pytest

License

WTFPL. See LICENSE.

About

Recover your TV Time library and watch history from the Android app (DioCache.db or the Flutter prefs), entirely in your browser.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages