All Projects → d-i-t-a → R2D2BC

d-i-t-a / R2D2BC

Licence: Apache-2.0 license
https://d-i-t-a.github.io/R2D2BC/

Programming Languages

typescript
32286 projects
HTML
75241 projects
CSS
56736 projects
SCSS
7915 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to R2D2BC

EveReader
Epub Reader, focused on annotation.
Stars: ✭ 68 (+151.85%)
Mutual labels:  epub, epub-reader
iRead
iRead is an EPUB reader for iOS written in Swift
Stars: ✭ 83 (+207.41%)
Mutual labels:  epub, epub-reader
onesync-reader-app
Cross-platform ebook reader built using Xamarin.Forms
Stars: ✭ 33 (+22.22%)
Mutual labels:  epub, epub-reader
Folioreader Android
A Java ePub reader and parser framework for Android.
Stars: ✭ 2,025 (+7400%)
Mutual labels:  epub, epub-reader
termpub
Epubreader for the terminal
Stars: ✭ 25 (-7.41%)
Mutual labels:  epub, epub-reader
epub-viewer
android epub viewer
Stars: ✭ 32 (+18.52%)
Mutual labels:  epub, epub-reader
readium-css
🌈 A set of reference stylesheets for EPUB Reading Systems, starting with Readium Mobile
Stars: ✭ 78 (+188.89%)
Mutual labels:  epub, epub-reader
jorkens
epub reader based on epub.js for foreign language learners
Stars: ✭ 35 (+29.63%)
Mutual labels:  epub, epub-reader
kthoom
Comic Book Reader in the Browser
Stars: ✭ 97 (+259.26%)
Mutual labels:  epub, epub-reader
Folioreaderkit
📚 A Swift ePub reader and parser framework for iOS.
Stars: ✭ 2,382 (+8722.22%)
Mutual labels:  epub, epub-reader
Ignite Bowser
Bowser is now re-integrated into Ignite CLI! Head to https://github.com/infinitered/ignite to check it out.
Stars: ✭ 586 (+2070.37%)
Mutual labels:  navigator
Flutter thrio
flutter_thrio makes it easy and fast to add flutter to existing mobile applications, and provide a simple and consistent navigator APIs.
Stars: ✭ 717 (+2555.56%)
Mutual labels:  navigator
Navigator
Android Multi-module navigator, trying to find a way to navigate into a modularized android project
Stars: ✭ 131 (+385.19%)
Mutual labels:  navigator
React Router Navigation
⛵️ A complete navigation library for React Native, React DOM and React Router
Stars: ✭ 498 (+1744.44%)
Mutual labels:  navigator
Beamer
A router that lets you navigate through guarded page stacks and URLs using the Navigator 2.0 API effortlessly.
Stars: ✭ 114 (+322.22%)
Mutual labels:  navigator
User Agents
A JavaScript library for generating random user agents with data that's updated daily.
Stars: ✭ 485 (+1696.3%)
Mutual labels:  navigator
Ctrlp Funky
A super simple function navigator for ctrlp.vim
Stars: ✭ 373 (+1281.48%)
Mutual labels:  navigator
Undetected Chromedriver
Custom Selenium Chromedriver | Zero-Config | Passes ALL bot mitigation systems (like Distil / Imperva/ Datadadome / CloudFlare IUAM)
Stars: ✭ 365 (+1251.85%)
Mutual labels:  navigator
freedsl
Practical effect composition library based on abstract wrapping type and the free monad
Stars: ✭ 37 (+37.04%)
Mutual labels:  modularity
Weather
Taiwan's Weather Maps! 想查詢每個地方的天氣嗎!?藉由 Google Maps API 的地圖服務,以及中央氣象局網站的天氣預報,讓你快速輕鬆的查詢台灣 368 個鄉鎮的天氣概況!
Stars: ✭ 206 (+662.96%)
Mutual labels:  navigator

R2D2BC

Introduction

R2D2BC is an implementation of the Readium v2 EPUB reader for the web. It is built as a modular toolkit (rather than a full-featured app) so that applications can use it to handle the EPUB-related functions while customizing the own design, user interface, and extensions.

Goals

  • Follow the Readium architecture specification for best interoperability
  • Allow maximum configurability via API methods, callbacks, code and style injection, and clear separation of functions.
  • Modularity
  • Clarity of code and ease of maintenance
  • Speed
  • Accessibility
  • Free and open source

The R2D2BC project intentionally includes only a base-bones demonstration user interface, and no sample content. Any implementer can add their own functionality and design without refactoring the whole project.

See below for projects that provide the necessary other elements to try it out and see it in action.

Architecture

This project implements most components of the Readium Architecture:

  • Implements Locator
  • Implements UserSettings
  • Implements Webpub Manifest
  • Implements the Readium shared models
  • Integrates Readium CSS
  • Integrates a simple Navigator for reflowable publications

Additionally, it:

  • Provides a decoupled Minimal UI
  • Provides build system optimization (Webpack)

Origins

Here is the original proposal, initiated by Aferdita Muriqi to the Readium Weekly Eng Meeting - 05/22/2019

Subsequent development of R2D2BC has been supported by DITA, Bokbasen, and CAST - which explains the D2, B, and C in the name.

Features & Functionalities

  • ePub Reflowable + Fixed Layout
  • Reader Settings
  • Configurable Modules with Callbacks
  • Injectable Fonts, CSS, Javascript
  • Text Selection with Injectable Context Menu
  • Bookmarks
  • Highlights
  • Annotations
  • TTS - Text to speech / Read Aloud
  • Media Overlays - Read Along
  • Search
  • Content Protection
  • Definitions
  • Popup Footnotes
  • Page Breaks - Page Numbers in margin
  • Sample Read
  • Timeline
  • Layers
  • Line Focus (Beta Feature)
  • Popups and Popovers

Extensions and Implementations

The R2D2BC reader has been used in:

  • The Clusive learning environment
  • Bokbasen's Allbok.no
  • Allvir's Allvit.no Reading Platform
  • The UNODC Fieldguides
  • The DITA Gateway D2G with several open collections
  • Ekitabu's Web Reader Implementations through Dita Gateway
  • NYPL's Web Reader Implementations
  • Bibliotheca's CloudLibrary as Sample Reader and Full ePub Reader
  • Above the Treeline's Edeweiss+
  • Bluefire's Web Reader Implementations
  • In a Project in the Meta Verse (to be named once public)
  • and a few more... :)

Contributing

Contributions are always welcomed! Please see CONTRIBUTING for detailed guidelines.

DepShield Badge

Get Started

Download ebook examples here: https://standardebooks.org/ebooks and copy them to ./examples/epubs. Then:

npm install

npm run build && npm run examples

Then visit http://localhost:4444/. Follow the prompts to view example apps.

WIKI

Migration Guides

Change Log

Supporters

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].