SoundBox Lite

An HTML5 synth music tracker

Built using JavaScript, HTML5, Canvas, Mobile, Audio,


More About This Demo From The Author

This is a tool for composing synthetic music directly in your browser. The tool and the software synth has a minimalistic design, and the resulting song data is small enough to fit in an URL.

Even so it takes some time to master this tool, but once you're comfortable with it you can produce quite amazing sounds and music.

Some demo songs have been included to get you started.

This is a work-in-progress snap-shot of a project called SoundBox that has not been released yet. The sound synth has its roots in the C language synth Sonant by Jake Taylor (Ferris/Youth Uprising), and was initially ported to JavaScript as a proof-of-concept project. In SoundBox Lite, the synth core has been rewritten to provide some new features and better performance.

Since this tool uses the audio tag to produce sound, it should work in most browsers (tested in Firefox, Chrome, Opera, Safari and Firefox mobile - though the UI isn't really optimized for mobile yet).

7 comments so far

Register or log in to add your own.

  1. barryvan said,

    This is very cool. I'd love to see some sort of import/export facility -- so that I can jot down an idea for a track here, then load it up in (say) OpenMPT or Renoise. I've got some JS code to parse IT/MPTM mods, if you're interested. [1] It'd also be pretty neat to integrate this with my own TrackPerformer... (also up here for the Audio Derby). :P

    1. m_bitsnbites said,

      Brilliant idea! Exporting as e.g. ReNoise should be fairly doable, I think. Could even generate some wave samples for the instruments to get it sounding almost right (to easier understand the tune once it gets imported into the other tracker).
  2. moloned said,

    First of all give credit where credit is due!

    Citation of Youth Uprising's sonant synth should be explicit and upfront rather than a foot note in the license.

    Lack of live sound output at least while entering notes via the keyboard is a weakness which will limit use of your synth to demos ala sonant.

    Adding .inc and .h file output as in sonanttool would be useful to broaden appeal.
    1. m_bitsnbites said,

      It was never my intention to not give credit to Jake Taylor and his work (for those who wonder what we're talking about: look up the Sonant 4k synth for Windows/x86). I've been in contact with Jake along the way, and he's been very helpful and supportive. (I decided to call the tool SoundBox rather than Sonant X.Y to avoid confusion, since Jake has made his own updates to Sonant after the v1 release).

      I guess I'll have to blame the fact that this pre-release was a bit rushed and pulled out of context, so not everything found its optimal form (including credits & license info).
    2. m_bitsnbites said,

      The "sound-playback-during-keying" is a much requested feature (understandably), and unfortunately one of those things that didn't make it into the demo. But I'm working on it.

      I have plans for several exporters, including .h/.inc. However, since no C/asm player routine has been written yet, it's not on top of the list right now. Perhaps if someone who's more into native 4k helped out with an optimal player routine? ;)
  3. moloned said,

    I don't see why you came up with a proprietary file format when .snt was perfectly fine.

    Maybe it was after adding and offset to the first and last bytes in the .snt file to come up with the format you used in SonantLive.

    Chill.snt byte0 =11 vs 12 in yours
    byteN = 30 vs 2E in yours

    This kind of practice serves no purpose other than to fragment the user base for no good reason.

    Now you've gone and invented yet another file format without publishing the details.

    Brilliant idea!
    1. m_bitsnbites said,

      Well... There are several good reasons for changing file formats.

      First of all the .snt file format is a proprietary format that is extremely specific to the Sonant synth.

      The most important reason for using a new file format for SoundBox Lite is that it does NOT use the Sonant synth. It's a new synth with different instrument settings, more note tracks per channel etc.

      If you look closely at the source code (I admit, it could have been better organized) you'll find the details for the file format (check the soundboxBinToSong() function in gui.js).

      If you have any more questions, drop me a mail (it's m at

Get the Source Code

Download the Source 459.94 KB · ZIP File

This demo is released under the GPL license.