Назад да BookField

BookField фармат package

wbpkg

Package, які BookField можа праверыць, усталяваць і чытаць

Здымак версій

workbook.toml
schema_version = 4
.wbpkg/manifest.json
schemaVersion = 5
reader_manifest.json
schemaVersion = 3
reader.rdoc
schemaVersion = 3
Reader SQLite schema
db_schema_version = 17

Коратка

Package, які BookField можа праверыць, усталяваць і чытаць

Адзін package з’яўляецца адной installable мяжой для аднаго work і адной edition. manifest.json — public contract, які BookField чытае перад import. Legacy packageKind і presentation fields не ўваходзяць у бягучы package shape.

Кантэйнер для ўсталявання

Адзін package з’яўляецца адной installable мяжой для аднаго work і адной edition.

Manifest v5

manifest.json — public contract, які BookField чытае перад import. Legacy packageKind і presentation fields не ўваходзяць у бягучы package shape.

ReaderDoc v3

ReaderDoc content падрыхтаваны для import, таму reader не parse-іць EPUB, HTML або CSS падчас runtime.

Дрэва навігацыі

navigationTree вызначае entry point і package-level змест reader.

Locator індэксы

Калі canonical docs або schema files змяняюцца, спачатку абнавіце source, потым гэты public snapshot і тлумачэнне.

Навучальныя планы

Authored study plans знаходзяцца ў manifest.json толькі калі package мае schedule data.

Package layout

Canonical files унутры wbpkg

Package paths — гэта POSIX paths адносна package root. Text packages маюць ReaderDoc files у reader/, а image, audio або video only packages могуць апусціць reader/.

.wbpkg
manifest.json
reader/{assetId}/reader_manifest.json
reader/{assetId}/reader.rdoc
images/{assetId}.{ext}
images/{assetId}-thumb.{ext}
media/{assetId}.{ext}
locator/{profileId}.json

Manifest contract

Manifest v5 вызначае install contract

manifest.json — public contract, які BookField чытае перад import. Legacy packageKind і presentation fields не ўваходзяць у бягучы package shape.

packageId / packageVersion

manifest.json — public contract, які BookField чытае перад import. Legacy packageKind і presentation fields не ўваходзяць у бягучы package shape.

work / edition

Адзін package з’яўляецца адной installable мяжой для аднаго work і адной edition.

assets

Package paths — гэта POSIX paths адносна package root. Text packages маюць ReaderDoc files у reader/, а image, audio або video only packages могуць апусціць reader/.

navigationTree

navigationTree вызначае entry point і package-level змест reader.

studyPlans

Authored study plans знаходзяцца ў manifest.json толькі калі package мае schedule data.

bindings

Калі canonical docs або schema files змяняюцца, спачатку абнавіце source, потым гэты public snapshot і тлумачэнне.

Package creation

Трымайце production tooling асобна ад public package boundary

  1. 1

    Падрыхтуйце source content

    Падрыхтуйце source content, metadata, media і authored schedules або references.

  2. 2

    Стварыце wbpkg

    Стварыце installable package з manifest metadata, ReaderDoc content, media, navigation і locator files.

  3. 3

    Праверце перад распаўсюдам

    Праверце package structure і schema compatibility перад distribution.

Reader import

BookField чытае installed package лакальна

  1. 1

    Праверка

    BookField правярае package shape і адхіляе unsupported або malformed packages.

  2. 2

    Распакоўка

    Supported package assets распакоўваюцца ў app-owned local storage.

  3. 3

    Import у SQLite

    ReaderDoc payloads, navigation, locator indexes, search records і schedules рэгіструюцца для offline use.

Сумяшчальнасць

Rules, якія робяць packages прадказальнымі

  • Адхіляйце legacy packageKind values.
  • Адхіляйце legacy presentation fields.
  • Адхіляйце non-canonical package paths.
  • Адхіляйце malformed structured references.
  • Не дадавайце source EPUB files у installable wbpkg.

Canonical references

Update policy

Гэта public page — implementation-facing overview, не canonical schema source. Canonical docs і schema files захоўваюцца з BookField source materials.

Source docs і schema files

  • 00-spec-index.md

    Гэта public page — implementation-facing overview, не canonical schema source. Canonical docs і schema files захоўваюцца з BookField source materials.

  • 04-manifest-json-schema.md

    manifest.json — public contract, які BookField чытае перад import. Legacy packageKind і presentation fields не ўваходзяць у бягучы package shape.

  • 08-reader-app-design.md

    BookField чытае installed package лакальна

  • schemas/manifest-v5.schema.json / readerdoc-v3.schema.json

    Гэта public page — implementation-facing overview, не canonical schema source. Canonical docs і schema files захоўваюцца з BookField source materials.

Калі canonical docs або schema files змяняюцца, спачатку абнавіце source, потым гэты public snapshot і тлумачэнне.

Сплануйце BookField package distribution

Вярніцеся да product overview або абмяркуйце, ці падыходзіць wbpkg distribution flow вашай content model.