├── _layouts
└── default.html
├── LICENSE
└── README.md
/_layouts/default.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
21 |
22 |
23 |
24 |
25 |
26 | {{ content }}
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | BSD 3-Clause License
2 |
3 | Copyright (c) 2021, Readium Foundation
4 |
5 | Redistribution and use in source and binary forms, with or without
6 | modification, are permitted provided that the following conditions are met:
7 |
8 | 1. Redistributions of source code must retain the above copyright notice, this
9 | list of conditions and the following disclaimer.
10 |
11 | 2. Redistributions in binary form must reproduce the above copyright notice,
12 | this list of conditions and the following disclaimer in the documentation
13 | and/or other materials provided with the distribution.
14 |
15 | 3. Neither the name of the copyright holder nor the names of its
16 | contributors may be used to endorse or promote products derived from
17 | this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
23 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 🌐 Readium Web
2 |
3 | Readium Web is a toolkit for building Web Readers. It currently supports EPUB, with plans for PDF, audiobooks and comics/manga/webtoons in future revisions.
4 |
5 | This repo is a work in progress, but it will host documentation and project management for the Readium Web project.
6 |
7 | Readium Web is divided into two separate toolkits:
8 |
9 | - the [TypeScript toolkit](https://github.com/readium/ts-toolkit)
10 | - and the [Go toolkit](https://github.com/readium/go-toolkit)
11 |
12 | ## Why do we need two toolkits?
13 |
14 | The TypeScript and Go toolkits are meant to be complementary rather than competing toolkits.
15 |
16 | The primary use case of the `go-toolkit` in a Web Reader implementation is to:
17 |
18 | * stream packaged resources (EPUB, CBZ)
19 | * output a [Readium Web Publication Manifest](https://readium.org/webpub-manifest) for each of them over HTTPS
20 | * along with various complementary API responses ([Positions List](https://readium.org/architecture/models/locators/positions/), [Guided Navigation](https://readium.org/guided-navigation))
21 | * and stream individual resources of these publications over HTTPS
22 |
23 |
24 | Whereas the primary use case of the `ts-toolkit` in a Web Reader implementation is to:
25 |
26 | * interact with a [Readium Web Publication Manifest](https://readium.org/webpub-manifest) and related APIs
27 | * provide various navigators to handle various publication types (reflowable publications and fixed layout for now)
28 | * along with the lower level API associated to these navigators (for example the [Preferences API](https://readium.org/architecture/proposals/009-preferences-api.html) or [Decorator API](https://readium.org/architecture/proposals/008-decorator-api.html))
29 |
30 | We could say that the `go-toolkit` turns a publication into an API, whereas the `ts-toolkit` is the engine of a Web Reader.
31 |
32 | ## Thorium Web and the Readium CLI
33 |
34 | In addition to these toolkits, implementers can also build their projects directly on top of [Thorium Web](https://github.com/edrlab/thorium-web) and the [Readium CLI](https://github.com/readium/cli).
35 |
36 | Thorium Web is an open-licensed Web Reader that's built on top of the TypeScript toolkit, providing UI components and all of the features that you would expect from a reading app.
37 |
38 | The Readium CLI can stream EPUB publications over HTTP/HTTPS or connect to a storage such as S3, GCS or the local filesystem of a server.
39 |
40 | We recommand looking into both projects as your default options when deploying a Web Reader.
41 |
42 | ## Readium Playground
43 |
44 | [Readium Playground](https://github.com/readium/playground) is a reference implementation of Thorium Web.
45 |
46 | A demo is available at