Skip to content

Latest commit

 

History

History
90 lines (56 loc) · 2.68 KB

File metadata and controls

90 lines (56 loc) · 2.68 KB

Readium CSS

Readium Logo

A set of reference stylesheets for EPUB Reading Systems.

Readium CSS provides styles for reflowable text:

  • paged and scrolled views;
  • a “patch” for HTML5 Suggested Rendering specific to publications (e.g. extra styles for hyphenation, breaks, etc.);
  • default styles for unstyled ebooks;
  • theming;
  • user settings;
  • a set of baselines and recommendations for accessibility, overrides, and internationalization.

License

BSD-3-Clause (http://opensource.org/licenses/BSD-3-Clause)

See license.txt.

Scope of this project

The primary goal of Readium CSS is to provide Reading System implementers with reliable and modern styles for reflowable EPUB 2 and EPUB 3 files. In addition, it should provide good interoperability in the existing ecosystem, while not overriding authors’ styles unless strictly necessary.

Readium CSS stylesheets were not designed and should not be used for fixed-layout EPUB, nor other file formats like FB2, PRC, Mobi, TEI, etc.

Some issues, which may be raised during development, will be documented so that they can serve as a reference for revisions of the EPUB specification, and even future specifications.

Implementations

Readium CSS is implemented in the Readium Mobile and Readium Web projects.

You will find it in:

External use include:

Development

Active development is pulled in branch develop.

Init

Building and testing are relying on npm packages and scripts. To initialize your clone/fork, first install dev dependencies:

npm install

Then install the Playwright browser binary and generate reference screenshots for visual regression testing:

npx playwright install chromium
npm run test:update

Build

To transpile all stylesheets using PostCSS:

npm run build

To test the updated styles and catch visual regression bugs:

npm run test

To update reference screenshots after an intentional change:

npm run test:update

Docs

Documentation can be accessed in docs.

You can alternatively download it as an EPUB file.