Открытый формат

Watchlog

wlog/1.0 application/wlog+json

Нейтральный, долговечный формат, чтобы забрать свои сериалы и фильмы куда угодно.

Ваши просмотры, ваши оценки, ваши рецензии: это ваши данные. Watchlog представляет собой простой, читаемый, документированный файл, который позволяет вынести их из одного сервиса и воспроизвести в другом, ничего не потеряв по дороге. Мы сделали его открытым намеренно: любое трекинг-приложение может его писать и читать.

Почему он умный

Идентификаторы, понятные всем

Каждое произведение несёт свои внешние идентификаторы (TMDB, IMDb, TheTVDB, а также MyAnimeList / AniList / Kitsu для аниме), а не внутренний номер. Так любой сервис может распознать нужный сериал или фильм.

Настоящий журнал, пусть и приблизительный

Просмотры образуют датированный список. Повторный просмотр становится просто ещё одной записью; «я это смотрел, но не помню когда» означает пустую дату. Ничего не выдумывается, ничего не теряется.

Оценки, сохраняющие свою шкалу

Оценка несёт своё значение И свою шкалу: 4 из 5 и 8 из 10 сосуществуют без искажений. Каждый потребитель нормализует их по-своему.

Расширяемый без поломок

Специфика конкретного сервиса (эмоции, оценки по эпизодам…) живёт в пространстве `extensions` под именем этого сервиса. Другой читатель вежливо её игнорирует: ядро остаётся универсальным.

Просто, с аккуратными датами

Обычный JSON, с версией в начале файла и датами в формате ISO 8601 (UTC). Никаких экзотических инструментов, он открывается в любом редакторе.

Как он выглядит

Объект-заголовок (версия, генератор, профиль), список произведений, список списков. Вот один элемент, сведённый к самому необходимому:

{
  "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": []
}

Спецификация

Версия
wlog/1.0
Тип медиа
application/wlog+json

Для сервисов, которые хотят его внедрить

Watchlog можно использовать свободно. Всё, что нужно для его реализации, здесь:

  • JSON-схема для автоматической проверки файла.
  • Полный пример с аннотациями по схеме.
  • Seenr служит эталонной реализацией: он экспортирует И импортирует Watchlog.

Попробуйте прямо сейчас

Seenr свободно говорит на Watchlog. Заберите свою библиотеку в виде файла или воспроизведите её здесь.

Watchlog представляет собой открытый формат, опубликованный для повторного использования. Тип медиа пока не зарегистрирован в IANA; авторитетна версия.

Доступна новая версия

Только что вышло обновление Seenr. Перезагрузите, чтобы получить его.