NodeJS / TypeScript Readium-2 "test app"
Electron / NodeJS implementation (written in TypeScript) of a test app for the Readium2 architecture ( https://github.com/readium/architecture/ ).
Please note that this application is a test bed for Readium2 components, this is not aimed at end-users. This is not a full reading system, just a basic reader interface. Notably, this application lacks a local bookshelf, and a feed explorer for remote publications (OPDS).
The pre-releases application installers/executables labelled "continuous test build" are generated automatically by TravisCI ( https://travis-ci.org/readium/r2-testapp-js ).
- https://nodejs.org NodeJS >= 8, NPM >= 5 (check with command line
- OPTIONAL: https://yarnpkg.com Yarn >= 1.0 (check with command line
Command line install:
npm install r2-testapp-js
yarn add r2-testapp-js
...or manually add in your
Several ECMAScript flavours are provided out-of-the-box: ES5, ES6-2015, ES7-2016, ES8-2017:
(alternatively, GitHub mirror with semantic-versioning release tags: https://github.com/edrlab/r2-testapp-js-dist/tree/develop/dist/ )
require() statement for imports (NodeJS style).
More information about NodeJS compatibility:
The type definitions (aka "typings") are included as
*.d.ts files in
./node_modules/r2-testapp-js/dist/**, so this package can be used directly in a TypeScript project.
A package-lock.json is provided (modern NPM replacement for
A yarn.lock file is currently not provided at the root of the source tree.
TravisCI builds are triggered automatically at every Git "push" in the
Version(s), Git revision(s)
NPM package (latest published):
Alternatively, GitHub mirror with semantic-versioning release tags:
Developer quick start
Command line steps (NPM, but similar with YARN):
git status(please ensure there are no local changes, especially in
package-lock.jsonand the dependency versions in
rm -rf node_modules(to start from a clean slate)
npm install, or alternatively
npm ci(both commands initialize the
node_modulestree of package dependencies, based on the strict
npm run build:all(invoke the main build script: clean, lint, compile)
ls dist(that's the build output which gets published as NPM package)
npm run electron(use the menu to open bundled EPUBs, or to choose arbitrary publications from the filesystem)
npm run electron PATH_TO_PACKED_OR_EXPLODED_EPUB_FILE_OR_URI(gets added to the graphical menu, for re-use later)