Posted on by & filed under ebooks, epub, epub zen garden, epubjs, html5, ibisreader, Uncategorized.

The last few weeks have seen a tremendous increase in interest about ePub. Many new blog posts have been written trying to explain the format. We’ve also seen a big jump in the number of publishers coming to Threepress for help with tricky ePub problems or just asking for guidance about the format. While I’d like to pretend that the growth is due, in part, to a long-anticipated awareness about the benefits of open standards among consumers, publishers, and suppliers, I think it’s more likely that it was Steve Jobs’ explicit mention of ePub support in iBooks on the iPad that drove most of the excitement. What makes me most excited about this groundswell is the sudden interest in ePub from a number of clever developers.

Just in the last few days, details emerged of two new JavaScript ePub readers, rePublish from Blaine Cook (@blaine) and JSEpub (screenshot) from August Lilleaas (@augustl). These two new readers join @liza’s epubjs, which will be a year old on Tuesday. An improved version of epubjs powers the ePub Zen Garden, which helps “dispel the myth that digital books can’t also be crafted works of visual design.”

Why are JavaScript ePub readers interesting? They’re interesting to me for three reasons:

  • JavaScript is the most popular programming language in the world and it might be the best way to get more developers interested in creating and tweaking ePub readers.
  • JavaScript ePub readers start challenging publishers, developers, and book readers to start thinking about what’s most important in delivering a compelling reading experience in a browser. We’ve spent a lot of time thinking about these choices while developing Ibis Reader, which will launch later this month, so I’m eager to see more opinions.
  • Building a pure-JavaScript ePub reader requires unzipping in JavaScript, which had no open source implementations until just recently. August has written about and open sourced his critical breakthrough for unzipping files in JavaScript. [Edit: Oops! I was wrong about this one. See the comments for more details.]

Colin Hazlehurst has also published some impressive introductions, tutorials, and code for the .NET/C# crowd at his InsideEpub project and on his blog.

Do you know of other techies making waves with ePub? Please let us know!

(And if you’re one of those publishers who is looking for help, contact us.)


19 Responses to “Three JavaScript ePub Readers”

  1. Keith Fahlgren

    I just got an email reminding me that BookGlutton‘s unbound reader is another JavaScript-based ePub reader (not open source, unlike the above).

  2. bowerbird

    keith said:
    > start challenging publishers, developers, and book readers
    > to start thinking about what’s most important in
    > delivering a compelling reading experience in a browser

    hey guys, i’m glad you got around to “start” thinking about this.

    here’s something i wrote up on that very subject, back in 2004:

    might wanna take a look at that, see how your apps stack up…


  3. Vic

    Here’s another approach to the epub, not quite javascript originated but might be interesting to the reader:

    It reflows contents into multiple short columns no matter how large the text is zoomed in or out, which makes it much easier on the eyes when reading long paragraph on the screen.


  4. bowerbird

    still haven’t decided whether i like air or not,
    but lovelyreader certainly has a lot going for it.

    at the same time, there’s a bug in there that
    runstogether words, presumably at line-end
    where the linebreak was a stand-in for a space.

    given that so much attention must have been
    paid to those other details, it’s curious how
    something this basic and fundamental to the
    process of _reading_ has been overlooked…

    in a similar vein, republish puts odd pages
    (recto) on the _left_ side of the page-spread
    and even pages on the _right_. how can one
    miss something so deeply embedded into the
    bedrock of the way that books look? i wonder.

    at any rate, lovelyreader looks like one to watch,
    and best wishes to republish and the other apps
    that are being written out there at this time…


  5. jpvincent

    about JS and zipping : you mean it’s possible to zip/unzip stuff from JS ? From the browser or only server-side ?

    if I want to pack several images present in the DOM, is it possible or is it just with texts ?

  6. Keith Fahlgren

    @jpvincent August’s work on described above is for inflating the contents of ZIPs. You may want to look at Masanao Izumo‘s other work.

  7. John W Lewis

    As a newcomer to your site and motivated originally, as you correctly surmise, by the support for the ePub format in the Apple iPad, I am impressed by the work and credentials for Threpress in this field. However, one forms impressions based on many factors; and unnecessarily gratuitous, probably misleading and largely irrelevant statements do little to enhance a reputation.

    I refer to your statement that “JavaScript is the most popular programming language in the world”. There are at least three points to make about this. This is an interesting, but largely irrelevant issue. The destination that it links to is of little help. Is there any evidence that is it true?

    Firstly, it is not made clear why it is important that “the most popular programming language in the world” should be used. Surely the most important criterion is whether it is the best choice of programming language for the required purpose? This assessment might be based on a combination of its: suitability for the task; availability in the environments (development and deployment) of interest; and, yes, popularity. In this case, please note, I am not questioning that JavaScript is your choice or the best choice of language for this purpose.

    Secondly, the destination of the link states that “JavaScript has become the World’s Most Popular Programming Language”, but provides no evidence for that.

    Thirdly, a well regarded guide to the popularity of programming languages ,”The TIOBE Programming Community index” (See:, which claims that it “gives an indication of the popularity of programming languages” currently (2010.02.17) has JavaScript in tenth place.

    Maybe you are confusing this claim for JavaScript with one for Java which the TIOBE index currently rates in first place and more than six times more popular that JavaScript? But I doubt it.

    Why make such a statement?

    Keep up the good work!

  8. Jay

    Hello, do you mind if I use some of your content on ? The credit stays with you along with a link back to your site! Thanks


  1.  Bookmarks for February 7th from 13:30 to 17:53 —
  2.  Планета е-книг » Blog Archive » Три новых программы чтения е-книг в формате EPub и все три написаны на JavaScript
  3.  JavaScript Epub readers discussed | TeleRead: Bring the E-Books Home
  4.  Three JavaScript ePub Readers : Threepress Consulting blog | 007Nova Articles
  5.  Ajaxian » Javascript ePub Readers
  6.  What We’re Reading - Open Blog -
  7.  Seizing the Means of Publication … No Small Undertaking | The Digital Reader