Zohar Arad

The Blog

Weekend Projects

Its been a busy weekend, and I’m proud to share two newly released projects with you.


If you read my recent post about the state of HTML5 audio codec support and share similar frustrations, Audio5js is here for the rescue.

Basically, Audio5js is a library-agnostic, light-weight, multi-codec, Javascript only API for audio playback in the browser.

It provides you with an HTML5 Audio flavoured Javascript API to control the life-cycle of audio playback in the browser. No frills, no dependencies, no bloat, prejudice or UI. Just sweet, simple good old Javascript.

The source code is heavily commented and of course there’s the much desired README file with all the details you need to write your next browser-based audio player.

Some highlights you might be interested in:

  • Audio5js supports any codec HTML5 Audio supports with a default fallback to MP3 (either via HTML or via Flash).
  • The API exposes useful events for you to subscribe to, and encourages you to adhere to the Javascript asynchronous way.
  • Browser support include IE8, IE9, Chrome, Safari, Firefox, Opera, Safari Mobile & WebKit Mobile
  • Audio5js is RequireJS / AMD ready and is also available via Ender.js


Some months ago I released a Rubygem called Jader that lets you share Jade templates between client and server in Ruby on Rails applications. It was created to help me build SEO friendly single-page applications with Spine.js.

Today, I released its younger brother Handlebarer which lets you do the same with Handlebars templates. Although still at infancy, Handlebarer seems like a perfect fit for Rails-driven Ember.js applications and with time, I hope to add some missing features (like partials support).

If you’re keen to build a rich single-page application either with Spine.js (which will let you use Handlebarer or Jader), or Ember.js, I encourage you to give either of them a try.


Proudly published with Hexo