Watchlog
wlog/1.0 application/wlog+json
Un format neutre et durable pour emporter tes séries et tes films où tu veux.
Tes visionnages, tes notes, tes avis : ce sont tes données. Watchlog est un fichier simple, lisible et documenté qui te permet de les sortir d'un service et de les rejouer dans un autre, sans rien perdre en route. On l'a conçu ouvert exprès : n'importe quelle appli de suivi peut l'écrire et le relire.
Ce qui le rend malin
Des identifiants que tout le monde comprend
Chaque œuvre porte ses identifiants externes (TMDB, IMDb, TheTVDB, et pour l'animé MyAnimeList / AniList / Kitsu), jamais un numéro interne. N'importe quel service sait donc retrouver la bonne série ou le bon film.
Un vrai journal, même flou
Les visionnages sont une liste datée. Un revisionnage, c'est une vue de plus ; « je l'ai vu mais je ne sais plus quand », c'est une date à null. Rien n'est inventé, rien n'est perdu.
Des notes qui gardent leur échelle
Une note transporte sa valeur ET son échelle : un 4 sur 5 et un 8 sur 10 cohabitent sans se déformer. Chacun normalise à sa façon.
Extensible sans casser
La richesse propre à un service (émotions, notes d'épisodes…) vit dans un espace `extensions` à son nom. Un autre lecteur l'ignore poliment : le cœur reste universel.
Simple et daté proprement
Du JSON, versionné en tête de fichier, avec des dates en ISO 8601 (UTC). Aucun outil exotique, ça s'ouvre dans n'importe quel éditeur.
À quoi ça ressemble
Un objet en tête (version, générateur, profil), une liste d'œuvres, une liste de listes. Voici un item réduit à l'essentiel :
{
"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": []
}
La spec
- Version
- wlog/1.0
- Type MIME
- application/wlog+json
Pour les services qui veulent l'adopter
Watchlog est libre d'usage. Pour l'implémenter, tout est ici :
- Le schéma JSON, pour valider un fichier automatiquement.
- Un exemple complet et commenté par le schéma.
- Seenr en est une implémentation de référence : il exporte ET importe Watchlog.
Essaie-le tout de suite
Seenr parle couramment Watchlog. Récupère ta bibliothèque en un fichier, ou rejoue-en un ici.
Watchlog est un format ouvert, publié pour être réutilisé. Le type MIME n'est pas encore enregistré à l'IANA ; la version fait foi.