Skip to content
KITABOO

KITABOO 7.0 Reader SDK

Build your own reader on the KITABOO engine.

The Reader SDK gives your developers the complete KITABOO reader as @kitaboo npm packages for Angular. Every feature is a plugin: keep it, restyle it, replace its screen or switch it off, while KITABOO keeps the engine, encryption and cloud services up to date.

  • For teams with developers
  • Angular 22
  • Plugin architecture
  • KITABOO Cloud
  • WCAG 2.2 AA · EAA ready

Distributed from our private npm registry at npm.kitaboo.com, which is not publicly available. To try the SDK, contact us for access.

Same engineDefault readerKids readerTraining readerHigher-Ed reader

Two ways to get a KITABOO reader

Which KITABOO is right for you?

Both run on the same KITABOO engine and cloud. The difference is who builds the reader around it: KITABOO, or your own development team.

No development needed

KITABOO white-label reader

You want a reader your learners open from your LMS, LTI tool or online store, branded as yours. KITABOO brands and configures the reader to your needs and runs it for you.

  • Embed the reader, or launch it from your LMS, LTI 1.1/1.3 tool or store
  • Your logo, colours and the features you choose, set up by KITABOO
  • No developers or release process needed on your side
  • Updates delivered and run by KITABOO
Ask about the white-label reader
For in-house development teams

More control, more customization

KITABOO Reader SDK

Your developers want to own the experience: custom screens, your own features and your own release schedule, without building or maintaining a reader engine.

  • Restyle, replace or switch off any feature, screen by screen
  • Add your own features as plugins inside your app
  • Ship on your schedule and take KITABOO updates when you are ready
  • The same encrypted delivery, analytics and sync from KITABOO Cloud
Talk to our SDK team

Not sure? Answer three questions.

Do you have an in-house development team that can own a web app?
Do you need custom screens or behaviour beyond your logo, colours and feature choices?
Do you want to decide when changes to your reader go live?

Answer all three questions to see our recommendation.

We recommend the KITABOO white-label reader.

Without an in-house development team, the white-label reader gives you a branded reader in your LMS, LTI tool or store, set up and run by KITABOO.

Ask about the white-label reader
We recommend the KITABOO Reader SDK.

Your developers can own the screens, features and release timing on the KITABOO engine, and take our updates when they are ready.

Talk to our SDK team
We recommend the KITABOO white-label reader.

If KITABOO branding and configuration cover your needs, the white-label reader is the faster start. Your team can move to the SDK later if you need more control.

Ask about the white-label reader

Customization

See what your team can change

Every control below maps to a real SDK setting. Pick one and the panel shows the code your developers would write. The four experiences are four readers built from one codebase on the same engine.

Experience
Brand colour
Font
Features
Navigation
Pages
Video and images open in
Brand colour
Font
Features
Navigation
Pages
Video and images open in
Brand colour
Font
Features
Navigation
Pages
Video and images open in
Brand colour
Font
Features
Navigation
Pages
Video and images open in

What your developers write

/* styles.css: your theme */
:root {
  --kitaboo-reader-brand: #2A2CEA#0B6E4F#B4235A#12122E;
  --kitaboo-reader-font: 'Inter', sans-serif'Nunito', sans-serif'Merriweather', serif;
}

// app.config.ts
// Same side-nav behaviour, your own navigation screen
const navPack = definePack(sideNavPlugin, { [SIDE_NAV_SLOT]: BottomBarComponentTopTabsComponent });

// A switched-off feature takes its buttons and panels with it
provideKitaboo({
  plugins: composePlugins(readerPreset({ features: { , highlight: false, note: false, pen: false, readAloud: false, search: false } }), {
    add: [kitabooCloudPlugin],
    packs: { 'kitaboo.sideNav': navPack },
  }),
});

// Where video, images and slideshows open
readerPresetConfig({
  'kitaboo.markup': { placement: 'popuppanel' },
});
// Two pages: readers switch it with the view-mode feature
readerPreset({ features: { viewMode: true } });

<!-- reader.component.html -->
<kitaboo-reader [open]="book">
  <kitaboo-7-layoutapp-kids-layoutapp-training-layoutapp-higher-ed-layout kitabooLayout [logoSrc]="'/assets/your-logo.svg'" />
</kitaboo-reader><!-- The stock KITABOO 7.0 layout with your logo --><!-- The KidsTrainingHigher-Ed reader: your own layout,
     the same plugins and engine underneath -->
<kitaboo-reader [open]="book">
  <kitaboo-7-layoutapp-kids-layoutapp-training-layoutapp-higher-ed-layout kitabooLayout [logoSrc]="'/assets/your-logo.svg'" />
</kitaboo-reader>/* Your brand colour, everywhere in the reader */
:root {
  --kitaboo-reader-brand: #2A2CEA#0B6E4F#B4235A#12122E;
}/* Your reading font */
:root {
  --kitaboo-reader-font: 'Inter', sans-serif'Nunito', sans-serif'Merriweather', serif;
}// Every stock feature on
provideKitaboo({
  plugins: composePlugins(readerPreset(), {
    add: [kitabooCloudPlugin],
  }),
});// A switched-off feature takes its buttons and panels with it
provideKitaboo({
  plugins: composePlugins(readerPreset({ features: { , highlight: false, note: false, pen: false, readAloud: false, search: false } }), {
    add: [kitabooCloudPlugin],
  }),
});// The side-nav plugin with its stock screen: a side rail
composePlugins(readerPreset(), {
  add: [kitabooCloudPlugin],
});// Same side-nav behaviour, your own navigation screen
const navPack = definePack(sideNavPlugin, { [SIDE_NAV_SLOT]: BottomBarComponentTopTabsComponent });

composePlugins(readerPreset(), {
  packs: { 'kitaboo.sideNav': navPack },
});// One page or two is a reading setting: the view-mode
// feature puts the switch in the bottom bar for your readers
// (shown here: one pagetwo pages)
readerPreset({ features: { viewMode: true } })// Where video, images and slideshows open
readerPresetConfig({
  'kitaboo.markup': { placement: 'popuppanel' },
});

Theme tokens

Colours, fonts, sizes and icons are --kitaboo-reader-* CSS custom properties. Set them on :root and the whole reader follows, including your logo through the layout’s logoSrc input.

Features on or off

Turn a feature off with readerPreset({ features }) and its buttons and panels disappear with it, or switch it at runtime for a study mode and a plain reading mode.

Your own screens

Replace one feature’s screen, its “pack”, with your own component and keep its behaviour. Use any UI library you like inside it, or write a whole new layout.

Your own features

A feature is a plugin you write inside your own app, with no change to the SDK. It gets the same toolbar, panels and events as the stock features.

How it fits together

Your app on top. The KITABOO engine underneath.

Your team owns the top layer. KITABOO maintains the two below it and ships them as versioned packages, so you change what users see without forking how books open, decrypt and sync.

  1. Your app

    Your Angular host: your sign-in, bookshelf, theme, layout and any screens you replace. Your repository, your release cycle.

    Owned by you
  2. Feature plugins and packs

    Toolbar, contents, search, highlights, notes, read-aloud, analytics and more. Each feature is a plugin, and its screen is a separate pack you can swap.

    Configured by you
  3. KITABOO engine and Cloud

    The book engine, encrypted delivery, and sync of highlights, notes, progress, analytics and SCORM attempts with KITABOO Cloud.

    Maintained by KITABOO

“Swap the pack to change the look and keep the behaviour.”

KITABOO 7.0 Developer Guide

Updates and security

Take every update without redoing your work

An SDK is only worth it if upgrades are cheap. The packages are versioned so that a new KITABOO release, including a security patch, is usually a small change on your side.

  1. 01

    KITABOO publishes a release

    Fixes, security patches and new features ship as new versions of the @kitaboo packages on the private registry.

  2. 02

    You move one version

    Update @kitaboo/reader-7.0, then move the four platform packages to the version it lists. One tested set, no guesswork.

  3. 03

    Install and build

    Feature packages accept compatible updates, so their bug fixes arrive on your next npm install.

  4. 04

    Your work carries over

    Your theme, settings, custom screens and own plugins use published interfaces only, so the upgrade does not overwrite them.

An upgrade, start to finish

npm install @kitaboo/reader-7.0@latest
npm view @kitaboo/reader-7.0 dependencies
#  → move core, contracts, epub, ui-angular to these versions
npm ls @kitaboo/contracts
#  → one version listed means a clean upgrade

You choose when to ship

Your reader has its own release cycle. Try a new KITABOO version on a branch, run your tests and release when it suits you, not when we do.

When packages are renamed

When a release renames packages, KITABOO ships a migration command in @kitaboo/devkit, so a rename is a command rather than a rewrite.

Security built in

  • Books are encrypted and decrypted in the reader by a small WebAssembly module
  • Packages come from a private, token-protected registry; tokens stay in each developer’s own ~/.npmrc
  • KITABOO servers accept only allow-listed domains
  • A Content Security Policy checklist is part of the developer guide

Capabilities

Everything a modern reader needs, already built

The SDK includes the complete KITABOO reader feature set across seven content types. Open a content type to see what comes with it.

  • Built to WCAG 2.2 Level AA and EAA ready; tested with NVDA, JAWS, VoiceOver and TalkBack
  • Right-to-left languages across every content type
  • LTI 1.1 and 1.3 launch of books, bookshelves and collections
  • Analytics: reading progress, time on resources, SCORM tracking, Google Analytics

Accessibility evidence: KITABOO Reader accessibility report (VPAT 2.5, March 2026) (PDF)

Fixed-layout eBooks
  • Table of contents (four levels), thumbnails with history, page and chapter navigation
  • Dedicated Resources tab with filtering and a table of resources
  • Zoom, pinch zoom, fit width or height, one or two pages, Read Mode
  • Highlights, sticky and contextual notes in five colours, long-press highlight
  • Pen tool in five colours with eraser, bookmarks, My Data with filters
  • Share notes with a class
  • Text search and text-to-speech with a machine voice
  • Print notes, highlights, single pages and page ranges with a server-side watermark
  • Audio, video with captions, YouTube and Vimeo, images, slideshows and documents
  • Glossary, page jumps, links to other books, HTML interactivities and SCORM with tracking
  • Audio sync and read-aloud: auto play, let me read, read for me
  • Surveys, weblinks, text inputs with instant feedback and a math keyboard, dropdowns
  • Dark mode, chapter progress, resource time tracking, achievement notifications
Reflowable EPUB
  • Table of contents (four levels), thumbnails with history, page navigation, Read Mode
  • Font size, Night, Day and Sepia modes, alignment, line spacing and margins
  • Scroll view or paginated single and double pages, with a percent-complete bar
  • Highlights and contextual notes in five colours, bookmarks, My Data with filters
  • Share contextual notes with a class
  • Text search, text-to-speech with MathML support, SMIL read-aloud
  • Print notes, highlights and pages; page jumps and weblinks
  • Dark mode, chapter progress and achievement notifications
Fixed-layout EPUB
  • Table of contents (four levels), table of resources, thumbnail slider with page images
  • Zoom, pinch zoom, fit width or height, one or two pages, Read Mode
  • Highlights, sticky and contextual notes, pen with eraser, bookmarks, My Data
  • Text search and text-to-speech with MathML support
  • Audio sync and read-aloud modes, page jumps and weblinks
  • Print notes, highlights and single pages; dark mode and chapter progress
Audiobooks
  • Table of contents and bookmarks
  • Play, pause, mute and 15-second skips
  • Playback speed, sleep timer and background play
  • Dark mode
Videobooks
  • Table of contents and bookmarks
  • Play, pause, mute and 15-second skips, playback speed
  • Closed captions, language selection and quality control
  • Dark mode
SCORM packages
  • Launch SCORM content from the bookshelf
  • Track attempts and results in analytics
HTML packages
  • Launch HTML content with an index.html at its root
  • Return to the bookshelf in one step

A proven, high-scale platform

The SDK runs on the same KITABOO engine and cloud that already deliver interactive textbooks to publishers, associations and training organisations around the world: the same encrypted delivery, the same sync and the same analytics, with your own reader on top.

Countries
25+
Active users
6M+
eBooks delivered
1.5M+
Uptime
99.97%

Get started

From access to an open book in four steps

Your developers start from the stock KITABOO 7.0 reader, which needs nothing else configured to open a book, and customize from there. The developer guides walk through each step.

Where to get the SDK

The KITABOO SDK is published on our private npm registry at npm.kitaboo.com. It is not publicly available, so npm install works only once we have given you registry access. To try it, contact us: we set up your registry access, a test book and a user token.

Talk to our SDK team
  1. Get access

    The KITABOO SDK team sets you up with registry access, a test book and a user token. Point the @kitaboo scope at the registry; the token stays in each developer’s own ~/.npmrc.

    @kitaboo:registry=https://npm.kitaboo.com
  2. Install the reader

    Install the stock reader and the KITABOO Cloud connector, then the four platform packages at the versions the reader lists.

    npm install @kitaboo/reader-7.0 @kitaboo/cloud
  3. Add it to your app

    Provide the preset, place the reader with the stock layout and import the stylesheet once.

    provideKitaboo({
      plugins: composePlugins(readerPreset(), {
        add: [kitabooCloudPlugin],
      }),
    });
    
    <kitaboo-reader [open]="book">
      <kitaboo-7-layout kitabooLayout />
    </kitaboo-reader>
  4. Open a book

    Resolve the launch with KITABOO Cloud and hand the result to the reader.

    const launch = await resolveBookLaunch(api, browserFetch, { bookId, token });

FAQ

Frequently asked questions

Who is the KITABOO Reader SDK for?

Publishers, ed-tech companies and enterprise learning and development teams that have an in-house development team and want to own their reader’s screens, features and release schedule while building on the KITABOO engine.

Should we choose the SDK or the white-label reader?

If you want to embed a reader or launch it from your LMS, LTI tool or store, and KITABOO branding and configuration cover your needs, choose the white-label reader: no development is needed. If your developers want custom screens, their own features or their own release timing, choose the SDK.

Which frameworks does the SDK support?

Angular 22 is the primary host and comes with ready-made screens. React, Vue and plain pages can use the <kitaboo-sdk> web component with the headless preset and their own controls. Native iOS, Android and Flutter apps can run the reader in a WebView through a bridge; full guides for these are available on request.

What can we customize with the SDK?

Colours, fonts, sizes and icons through --kitaboo-reader-* CSS custom properties; your logo; which features are on; the screen of any feature, which you can replace with your own component while keeping its behaviour; the whole layout; and your own features, written as plugins inside your app with no change to the SDK.

How do updates and security patches work?

Move @kitaboo/reader-7.0 to a newer version, then move the four platform packages to the version it lists. Feature packages accept compatible updates, so their fixes arrive on your next npm install. Your settings, custom screens and own features use published interfaces only, so an upgrade does not overwrite them, and when a release renames packages KITABOO ships a migration command in @kitaboo/devkit.

Which content types does the reader open?

Fixed-layout eBooks, reflowable EPUB, fixed-layout EPUB, audiobooks, videobooks, SCORM packages and HTML packages, built to WCAG 2.2 Level AA with right-to-left language support across them.

Is the reader accessible and ready for the European Accessibility Act?

Yes. Built to WCAG 2.2 Level AA and EAA ready, the KITABOO reader has a published conformance report (VPAT 2.5). It is tested with the NVDA, JAWS, VoiceOver and TalkBack screen readers. The European Accessibility Act covers e-books and the software used to read them in the EU, and has applied since 28 June 2025. Readers you build with the SDK start from this accessible base. Read the KITABOO Reader accessibility report (VPAT 2.5, March 2026) (PDF).

How do we get access to the SDK?

The SDK is published on our private npm registry at npm.kitaboo.com, which is not publicly available. Contact the KITABOO SDK team through the form below: we set you up with registry access, a test book and a user token, and share the developer guides.

Get in touch

Ready to build your own reader?

Tell us about your team and your readers. We will help you decide between the SDK and the white-label reader, and set your developers up with access.

Talk to our SDK team

We set your developers up with registry access, a test book and a user token, and share the developer guides.

We respect your privacy. We do not share your information. Please see our Privacy Policy.

KITABOO Run

Every obstacle has a KITABOO fix

Run the KITABOO B from print to digital. Dodge anything red: print stacks, flat PDFs, pirates, audit barriers and 404 gaps. Grab anything that glows green: pages, and the KITABOO product that clears each obstacle. Can you last two minutes?

Space or tap to jump, again in the air to double jump

Dodge anything red

  • Print stacks
  • Flat PDFs
  • Pirates
  • Audit barriers
  • 404 gaps
  • Pirate drones: stay low

Grab anything that glows green: the KITABOO fixes

  • Fluid 360

    Turns print stacks into eBooks

  • Interactive Textbook Creator

    Makes flat PDFs interactive

  • KITABOO DRM

    Blocks one hit. Every run starts with one

  • WCAG 2.2 AA

    Lifts audit barriers and ramps 404 gaps

  • K.AI

    Jumps every obstacle for you

  • Kids Reader

    Slows the run to a read-along pace

  • Training Hub

    Five modules earn a certificate

  • Events

    Tickets show where to meet us next