Что такое OPDS?

OPDS — это то, как приложение для чтения разговаривает с книжным каталогом. Вы встречаете его каждый раз, когда открываете каталог в Fablum, обычно не замечая.

OPDS расшифровывается как Open Publication Distribution System. Это открытый стандарт публикации книжного каталога в виде, который может прочитать другая программа: лента записей, у каждой — название, автор, язык, обложка и ссылка на сам файл. Приложение для чтения забирает эту ленту и рисует её списком книг. Ничто в ней не принадлежит одному магазину или одному приложению.

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

Чем он отличается от магазина

Каталог — не магазин. Нет корзины, нет оплаты, нет аккаунта: запись OPDS — это описание плюс одна или несколько ссылок на скачивание, и приложение идёт по ссылке. Библиотеки, архивы и издатели текстов общественного достояния пользуются им именно потому, что никакой торговой машинерии в нём нет.

Это и не формат файла. EPUB и PDF — это книги; OPDS — указатель, который на них ссылается. Большинство каталогов — просто Atom или JSON поверх HTTP, поэтому любое приложение для чтения, знающее стандарт, листает их без всяких плагинов.

Где его использует Fablum

В Fablum встроен один публичный каталог, и это каталог OPDS. Всё, что происходит в той панели, — приложение читает ленту OPDS и делает то, что в ней находит: категории, по которым вы ходите, поиск, фильтры по языку и типу, скачивание, поток.

  1. 1

    Откройте Fablum, нажмите + в библиотеке и выберите Публичные каталоги. Откроется каталог OPDS с книгами и аудиокнигами общественного достояния.

    Панель публичного каталога поверх библиотеки Fablum на iPhone: Peter Pan, Dracula, Treasure Island и Sense and Sensibility, у каждого обложка, автор и метка EN
  2. 2

    Ищите в нём или пользуйтесь фильтрами по языку и типу. И то и другое — возможности OPDS: приложение просит у каталога более узкую ленту и перерисовывает список.

  3. 3

    Нажмите на книгу и скачайте её. Ссылка на скачивание из записи забирается и импортируется, после чего книга открывается офлайн из вашей библиотеки.

Что покрывает стандарт

Лента OPDS описывает две вещи: навигацию — категории и полки, по которым вы ходите, — и получение, то есть записи, которые действительно можно скачать. Одна запись может предлагать несколько файлов (EPUB, PDF или аудиокнигу), и приложение выбирает тот, который умеет открыть. Поиск тоже входит в стандарт, поэтому каталог вы ищете в приложении, а не на сайте.

Спецификация открыта и развивается публично на specs.opds.io; версия 1.2 основана на Atom, её до сих пор публикует большинство каталогов, а 2.0 — преемница на JSON.

Практическая сторона того же каталога — как найти бесплатные книги.

Посмотреть встроенный каталог в Fablum