TrackMyAnime feature graphic
TMA Logo

Live · updating

TrackMyAnime

A private anime tracker for iOS and Android: your library, what is next, and how the year adds up.

Solo developer & designer · Feb 2025 – Present · 2.2.4 · iOS and Android · App Store and Google Play

Get it on Google PlayDownload on the App Store

A private anime tracker built around your list — progress, playlists, what to watch next, and a recap of the year. No ads, no social feed. On the App Store and Google Play, and still updated when something needs a fix.

  1. Home

    Your home screen is built from your list — not a social feed.

  2. Search

    Search that stays fast: shows, characters, and the people behind them.

  3. Library

    Playlists for what you are watching, saving, finished, and love.

  4. Schedule

    A weekly schedule that follows when episodes actually go out.

  5. Anime page

    Everything about a title on one page — episodes, related shows, songs, reviews.

  6. Explore

    Browse what is popular, airing, upcoming, or in season.

  7. Relations

    See how a title connects — sequels, spin-offs, and the rest of the map.

  8. Analytics

    Hours, titles, and a recap of the year from your own list.

What landed

Shipped on Google Play and the App Store

2.0 added relations, yearly Arcs, and analytics; 2.2.x is still maintained

What's in the app

Library

  • Playlists for watching, watch later, finished, favorites, and lists you make.
  • Tick episodes one at a time, or handle a bunch of titles in one pass.
  • Import watching, completed, and plan-to-watch from MyAnimeList — one way, not a sync.

Home

  • Home is built from your list: news, new episodes, continue watching, start watching, and a for-you row.
  • Rows from your progress: finishing soon, revisit, more from the saga, watchlist premiering.

Discover

  • Search shows, characters, and the people behind them — filters and recent searches stay close.
  • Browse what is popular, airing, upcoming, in theaters, or in season.
  • Character and voice-actor pages, plus a seasons browser.

A title

  • Episodes, related shows, pictures, reviews, stats, and songs on one page.
  • A map of sequels, spin-offs, and the rest of the franchise, with a suggested watch order.
  • Openings and endings on the title — not a separate music app.

Schedule

  • A week or a month of airing times, based on when episodes actually go out.
  • A ping when something you track drops — in the app inbox and on the phone.

Year

  • Analytics from your list: hours, titles, genres, and how the year adds up.
  • An activity heatmap and a timeline of started, finished, and imported.
  • Annual Arcs — a look back at the year when it closes.

The app

  • Custom themes, nine built-ins, English or Japanese labels, and landscape layouts.
  • Guest mode if you want to try before signing in.
  • Move your library with a .tma.zip export and import.
  • Layout density, section or card views, and a short tour when 2.0 landed.

How it was built

  • Flutter 3.32 (Dart) client with Provider and Hive, plus Firebase Auth, Firestore, Cloud Functions, and FCM.
  • Live catalog via Tenrai. MyAnimeList OAuth2 + PKCE for one-way import of watching, completed, and plan-to-watch — import, not two-way sync.
  • Release alerts in 30-minute Asia/Tokyo buckets, delivered through FCM and an in-app Firestore inbox, with a 6-hour reconcile so missed drops get caught.
  • Episode times predicted from AniList, Kitsu, and Syoboi, with UTC↔JST conversion, cour-break handling, and TTL caches.
  • Cloud Functions batched around reads, inbox denormalization, and prediction caches.
  • Relation tree, activity heatmap, and yearly Arcs on top of the library.
  • Custom themes, English/Japanese, landscape layouts, guest mode, and .tma.zip data transfer.

The hard parts

Cost vs correctness

Notification scheduler runs on 30-minute Asia/Tokyo buckets with an overdue cap, plus a full reconcile so drift cannot silently miss releases.

Prediction holes

Cour breaks and empty premiere responses needed client-side regeneration so “new episode” stays trustworthy after catalog quirks.

Catalog swap

Moved the live catalog from Jikan to Tenrai while keeping MAL for import, search, and people — without breaking cached keys.

Landscape

Rebuilt core chrome with OrientationBuilder and MediaQuery so phones and tablets stay usable in landscape.