---
# System prepended metadata

title: Web Toolkit

---

# Web Toolkit

[![hackmd-github-sync-badge](https://hackmd.io/5HAkGuuHQ6WlDFn7R0J6cA/badge)](https://hackmd.io/5HAkGuuHQ6WlDFn7R0J6cA)


## Meeting Minutes

**Location:** https://zoom.us/j/98207851566?pwd=dWk5dHpPWms4Q1dnQXZ1TkVEc2xidz09

**Date:** July 27, 2020 15:30 (UTC)

### Agenda

1. Summarize
2. Shared Model and Navigator (reminder)
3. Monorepo Example
4. 
5. 

### Participants

- [Aferdita Muriqi](https://github.com/aferditamuriqi) <sup>AM</sup>
- [Jiminy Panoz](https://github.com/JayPanoz) <sup>JP</sup>
- [Laurent Le Meur](https://github.com/llemeurfr) <sup>LL</sup>
- [Andrew Rhomberg](https://github.com/arhomberg) <sup>AR</sup>
- [Juan Corona](https://github.com/jccr) <sup>JC</sup>
- [Mickaël Menu](https://github.com/mickael-menu) <sup>MM</sup>
- [Monica Powell](https://github.com/m0nica) <sup>MP</sup>
- [Leonard Richardson](https://github.com/leonardr) <sup>LR</sup>


### Regrets

- [Hadrien Gardeur](https://github.com/HadrienGardeur) <sup>HG</sup>

## Discussion

* current work
* injecting Readium CSS
* browser compatibility

### Notes

Jiminy's current PRs
- Shared models in Readium Web: https://github.com/readium/web/pull/3 -> received comments from Mickaël
- Navigator in JBKS fork: https://github.com/Jellybooks/web/pull/1 -> WIP

The architecture docs are ready so we want to implement Readium Web using these principles. 

Where we left last week: 
- Shared Model may have one more review needed, after that let's merge
- Navigator: we still need to work on PaginatedBookView vs ScrolledBookView and may have to work on some other aspects before merging. 

The remaining work on the Navigator will take more than 2 weeks. 
Aferdita & Jiminy are ok for plan some common time for a common work in the next 2 - 3 weeks.

re. the Navigator API, it is still a WIP. If there is a Navigator per media (ebooks, audiobooks ...) the interfacce is ok, but if there is a unified Navigator for all media types, it has to evolve. Also, the user setting aspect is still WIP.

Other public API have to be defined (which ones?). And unit tests are mandatory for this project.  

The Locator model is stable, but the implementation of highlights needs some work. 

Re. "Streamer" / Publication Server / Publication Services: streamer codebase is already available in Readium. 
Relation with bookmarks, annotations, search: managing them can be done client side via specific modules + cache (local storage). Storing / restoring / sharing them can be handled server side, via a client-server API. We must have a code architecture and APIs which allows flexible implementations. 

NYPL really interested, but specific projects for September and not sure they will be able to inject workforce in the project for the short term.

## Monorepo

Juan's example repo:
https://github.com/evidentpoint/readium-web-monorepo-sample

It includes useful tools, only babel is difficult to use -> the choice of browsers must be made before final config is done. 

Juan is open to questions about it. He will add the Shared Model + some tests, to check everything works, then the Navigator, same purpose. Then if there is consensus, this work will be made as a PR to readium/web. 

Juan will change the repo name as "sample-monorepo" to avoid people making assumptions about what one finds inside. The readme will also reflect that. 

## Action Items

Jiminy will go-on with his implementation of the new version of Jellybooks app, using the new shared model and navigator.

Aferdita will help Jiminy looking at PaginatedBookView vs ScrolledBookView, the goal being to unify these views.

Juan will add more documentation to the sample monorepo. Also will try to review outstanding PRs.


