Well, here we go.
My plan is to use the wonderful Monocle library to display the epubs. Monocle is a javascript library that takes the information in the epub file and displays it in a HTML viewer. Thus, if I create an app with a WebView, I can stick Monocle in that to render the book.
Monocle is designed to be used from a server using pre-parsed ebook files, so I have two tasks to get basic functionality: 1. Opening and parsing the epub file. 2. Serving the epub components to Monocle.
The first isn’t as bad as it sounds: epub files are just glorified zip files with various XML files within. This is why I love developing with Python and GTK. Python’s standard library has support for handling zip files, dealing with XML, and writing HTTP servers. I just have to glue this bits together and….
What’s that? We’re not using Python anymore? We’re using QML?
Lovely.