A gempub viewer/reader/client
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
sloum 62dc9a2a8e Adds large icon and alters load of html to be less chunky before js and css loads 2 months ago
frontend Adds large icon and alters load of html to be less chunky before js and css loads 2 months ago
.gitignore Adds readme and clarifies license 3 months ago
LICENSE Adds readme and clarifies license 3 months ago
Makefile Removes unused vars and adds linux Makefile 2 months ago
README.md Fixes issue with promise chain in openGpub js 2 months ago
celest-icon-lg.png Adds large icon and alters load of html to be less chunky before js and css loads 2 months ago
celest-icon.png Changes app icon, updates accessibility features (to be continued...) 3 months ago
celest-images.png Adds screenshot 3 months ago
celest.desktop Adds temp desktop icon and solid desktop file 3 months ago
go.mod Initial commit 3 months ago
go.sum Initial commit 3 months ago
gpub.go Removes unused vars and adds linux Makefile 2 months ago
main.go Adds large icon and alters load of html to be less chunky before js and css loads 2 months ago
metadata.go Initial commit 3 months ago
project.json Initial commit 3 months ago
state.go Adds readme and clarifies license 3 months ago
zip.go Initial commit 3 months ago

README.md

Celest

Celest is a dedicated reader/client for the gempub file format, with a particular focus on providing a pleasant reading experience for novels and other fiction styles utilising prose (verse being harder to work with using gempub).

Usage

When running for the first time you will be presented with a folder icon. Click on it to open a file. If it is a valid/understood gempub file it will be opened and you can start reading using the above listed keys. When the window is closed your progress, as well as the last book you were reading will be saved. When you start the application again, that book will be opened to where you were (or if there was a big size change to your window, approximately where you were). You can then, at your option, use the folder icon in the top bar to open a different book. When you open a different book your place will be saved in the book you were reading and the newly opened book will open to the beginning, or if you have read it before to where you were (with the same sizing caveat as above).

That is mostly it. Pretty straightforward.

There are not many feature upgrades planned other than being able to view the cover, is present, which is not currently supported.

Theme

Celest does not support user configurable themes (unless you want to edit frontend/src/main.css and rebuild, which is very doable). However, your system preference for a dark or light theme should be detected and an appropriate theme chosen (from the two available). Both favor a sepia/brown/red oriented color scheme, to avoid bright brights or dark darks and instead provide an easy on the eyes reading experience. The styling also makes use of the prefers-contrast: more css to attempt to provide a high contrast view when requested. This did not make a difference on Ubuntu (with high contrast selected in accessibility settings), but supposedly it will work on OSX (testing on this coming soon, hopefully).

Keys

The following key bindings are available:

  • Ctrl+q to quit (autosaves progress)
  • Ctrl+o to open a file
  • Ctrl++ to make text larger
  • Ctrl+- to make text smaller
  • Ctrl+= to return text to default size
  • ArrowRight or l to turn to the next page
  • ArrowLeft or h to turn to the previous page
  • Escape to toggle the table of contents view

Gempub

This reader supports inline italics and bold in gempubs using markdown's underscore notation for each (so-as to not conflict with lists, which start with * in gemtext). This is in support of a potential effort to update the gempub spec to gempub2 and allow metadata options to denote support of optional feature variants like these.

Screenshots

Two screenshots of the celest application. The first showing a reading view, the second a table of contents view

Building/Installing

The reader builds for Linux and Mac OSX desktop systems.

Building from source requires Go, node, and npm. On OSX it also requires xcode, which can be installed via xcode-select --install. On Linux you will need the following installed: gcc, libgtk3, and libwebkit. They may have different names depending on your distro.

Prebuilt versions are coming soon.