livrereader / livre

An eBook reader built with Electron
37 stars 6 forks source link

Annotations: Highlighting #19

Open diethardsteiner opened 7 years ago

diethardsteiner commented 7 years ago

As a reader I'd like to highlight important words/sentences. Highlights should be stored in a portable file format like JSON, either a one file per epub file or one central file holding the annotation data for all epub files. I suppose latter one might be easier since otherwise some library management feature might be required. The issue with one central file though is file size. I take quite a lot of highlights, so over time this file will get quite big, so it is important that this file can be parsed rather quickly. Ideally the location of this file should also be configurable, e.g. I might want to save this file in my Dropbox folder, so that I can conveniently sync it between my laptop and workstation.

jdormit commented 7 years ago

I would also like the ability to associate notes with annotations. The data format would be something like:

{
  cfi: {
    text: String
  }
}

Annotations should be highlighted in the text, and any notes should appear in the margins with a line (or something) connecting it to the annotation. When the user clicks on an annotation, a menu should appear over the highlighted portion with buttons for taking/editing a note and deleting the annotation.

I like the idea of a configurable eBook data file that could be synchronized across machines. I opened a new issue for that: #21.

diethardsteiner commented 7 years ago

Sounds excellent!