Guest Post: Corona SDK and eBooks, a match made in app heaven!

Share on Facebook0Share on Google+0Tweet about this on TwitterShare on LinkedIn0

Unicorn Labs‘ Mark Sigal talks about the evolution of eBooks, and just how Corona SDK allowed him and his team to create our latest App — err — eBook of the Week, Rabbit and Turtle’s Amazing Race.

For more from Mark, you can also check out a past interview and a quick blogpost we’ve done mentioning him and Unicorn Labs.

Mark Sigal, Unicorn Labs

I have written in the past about where I think eBooks are headed (“Rebooting the book”), but the essence is this:  Just as the advent of sound in motion pictures transformed not only how films were made, but also what they were and the economics behind them, such is the future for the book business and print media in general.

Yet, the eBook business, as it exists today, is only nominally better than a PDF stuffed into a bookish-sized reader (think Amazon’s Kindle).  In other words, it’s mostly formatted text, devoid of sound, animation and/or interaction.

But, this is rapidly changing. When you embrace the construct “eBook as an App,” suddenly there are few limits to the physics of what a book can do. It can respond to tilt & touch, interact with the reader, read to them, feed them high-definition art, music, online information, etc.

Case in point:  The first two books that my company, Unicorn Labs, has rolled out have been constructed as different presentation vehicles.

In our first book, Rabbit and Turtle’s Amazing Race, we took the concept of popular fable (i.e. The Tortoise and the Hare) and combined children’s rhyming book with hand-drawn illustrations, quirky interactions and sound to deliver what we consider “Pop-Up Book 2.0.”

For our second book, BOY! A Wolf’s Tale, we opted to create a different vehicle, the Amusement Park ride nested in a Book.  By that I mean, we hearkened back to our favorite Disney-style amusement park rides (think: Pirates of the Caribbean), and imagined how those types of character movements, and the varied sensory progressions over the course of the ride could be applied to the eBook.

You can check out the books yourself (there are lite/free and paid versions of each book), and decide how well we did, but there are three points that I want to leave you with:

  1. There is lots of room for innovation when you un-tether your concept of a book as a singular thing, and mentally re-boot it as, for example, a Classroom, Game, Theater, Amusement Park Ride or Art Installation.
  2. The raw ingredients that go into creating such eBooks can themselves be product-ized into an orchestrated framework, so as to accelerate the process of rolling new book concepts into the market, and iterating same within the market.
  3. Using Corona SDK for building eBooks works exceedingly well, and there are all sorts of lifecycle benefits of embracing it as a foundational platform for eBook creation.


Building a Foundation for Success

First off, let me acknowledge a bias. I am a platform guy, which is to say that in building products, one of my questions is always, “Where is the leverage, how can we re-use this, and does it facilitate derivative offerings that are still custom products?”

As such, when we began building apps for Apple’s iOS (we now have 17 apps, 8 of which are built using Corona SDK), we asked ourselves the above questions.

First off, we chose Corona because it was clear to us that we’d get new component functions out more rapidly than via Cocoa Touch or Cocos2d, both of which we use on other products.  Second, we liked the hands-on support vibe we felt from Ansca, which is integral when evaluating platform providers.

Lastly, we knew that there would come a day when Android made sense for us from a development target perspective, and our thesis there was that Corona makes supporting Android closer to a recompile option than a re-architecting effort.

An upside surprise in this decision is that we found that supporting all of the iOS device variants (think: iPod touch, iPad, iPhone across N-generations) was a lot more seamless for us than was the case with, for example, Cocos2d.

Meanwhile, on the eBook front we quickly came to the realization that if we were going to build multiple books in a leveraged fashion, we needed a palette for doing so, which led us to create our own meta-framework that rides on top of Corona.

What does this framework do? Simply put, it consists of a parser to read an array of data that can be instanced with different flags and graphic data points, such that the parser reads the data set and automatically compiles it into a book.

Specifically, each element in the data set can be given an animation or interaction type, such that we can easily implement and customize unique book recipes that include:

  • Pulsing elements
  • Moving elements
  • Blinking eye functions
  • Spinning elements
  • Clock elements
  • Floating effects
  • Multi-Layered, psychedelic-style effects
  • Vibrating elements
  • Spinning coins
  • Rotating elements
  • N-frame animations
  • Burning effects
  • Spotlight methods
  • Fades
  • Push elements
  • Scaling effects
  • Sequencing effects

Given the range of procedural, input-output methods that can be applied to such a model, and how media types can be both graphical and audio-based, we have found the approach to be quite powerful and straightforward at the same time.

Share on Facebook0Share on Google+0Tweet about this on TwitterShare on LinkedIn0

This entry has 3 replies

  1. Chris says:

    Hi. Very interesting. I am trying to build a type of PDF reader with Corona that fetches about 10 pdf documents from a server with about 40 pages. Do you think that would be straight forward?


  2. Stephan says:

    @Chris Did you find a solution? I am also trying to find a way to make a PDF reader in Corona?