Open formaat

Watchlog

wlog/1.0 application/wlog+json

Een neutraal, duurzaam formaat om je series en films mee te nemen waar je maar wilt.

Je kijkbeurten, je beoordelingen, je recensies: het zijn jouw gegevens. Watchlog is een eenvoudig, leesbaar, gedocumenteerd bestand waarmee je ze uit de ene dienst haalt en in een andere opnieuw afspeelt, zonder onderweg iets te verliezen. We hebben het bewust open ontworpen: elke trackingapp kan het schrijven en lezen.

Wat het slim maakt

Ids die iedereen begrijpt

Elk werk draagt zijn externe ids (TMDB, IMDb, TheTVDB, plus MyAnimeList / AniList / Kitsu voor anime), nooit een intern nummer. Zo kan elke dienst de juiste serie of film terugvinden.

Een echt logboek, ook een vaag

Kijkbeurten zijn een gedateerde lijst. Een herkijkbeurt is gewoon één kijkbeurt meer; "ik heb het gezien maar weet niet meer wanneer" is een lege datum. Niets wordt verzonnen, niets gaat verloren.

Beoordelingen die hun schaal behouden

Een beoordeling draagt zijn waarde ÉN zijn schaal: een 4 op 5 en een 8 op 10 bestaan naast elkaar zonder vertekening. Elke lezer normaliseert op zijn eigen manier.

Uitbreidbaar zonder te breken

Dienstspecifieke rijkdom (emoties, beoordelingen per aflevering…) leeft in een `extensions`-ruimte onder de naam van die dienst. Een andere lezer negeert die beleefd: de kern blijft universeel.

Eenvoudig, netjes gedateerd

Gewone JSON, geversioneerd bovenaan het bestand, met datums in ISO 8601 (UTC). Geen exotische tools, het opent in elke editor.

Hoe het eruitziet

Een header-object (versie, generator, profiel), een lijst met werken, een lijst met lijsten. Hier is één item teruggebracht tot de essentie:

{
  "format": "wlog/1.0",
  "generator": { "name": "Seenr", "url": "https://seenr.app" },
  "profile": { "handle": "kevin", "locale": "fr" },
  "items": [
    {
      "type": "show",
      "ids": { "tmdb": 1429, "imdb": "tt1355642", "mal": 5114, "anilist": 5114 },
      "title": "Fullmetal Alchemist: Brotherhood",
      "year": 2009,
      "status": "completed",
      "favorite": true,
      "tags": ["anime", "shonen"],
      "rating": { "value": 10, "scale": 10, "rated_at": "2021-02-01T20:00:00Z" },
      "watches": [
        { "season": 1, "episode": 1, "watched_at": "2021-01-05T21:00:00Z" }
      ],
      "season_ratings":  [ { "season": 1, "value": 9,  "scale": 10 } ],
      "episode_ratings": [ { "season": 1, "episode": 5, "value": 10, "scale": 10 } ],
      "extensions": { "seenr": { "emotions": ["😭"] } }
    }
  ],
  "lists": []
}

De spec

Versie
wlog/1.0
Mediatype
application/wlog+json

Voor diensten die het willen overnemen

Watchlog is vrij te gebruiken. Alles wat je nodig hebt om het te implementeren staat hier:

  • Het JSON-schema, om een bestand automatisch te valideren.
  • Een volledig voorbeeld, geannoteerd door het schema.
  • Seenr is een referentie-implementatie: het exporteert ÉN importeert Watchlog.

Probeer het meteen

Seenr spreekt vloeiend Watchlog. Pak je bibliotheek als bestand, of speel er hier een opnieuw af.

Watchlog is een open formaat, gepubliceerd om hergebruikt te worden. Het mediatype is nog niet geregistreerd bij IANA; de versie is bepalend.

Nieuwe versie beschikbaar

Er is net een Seenr-update uitgebracht. Herlaad om die op te halen.