About MonoSynth
MonoSynth v0.0.3-alpha, at monosynth.app. Free to use, and with no warranty.
Follow along for demo videos, patch ideas and what's coming next.
What this is
MonoSynth is a semi-modular monophonic synthesizer that runs entirely in the browser: two oscillators, two Sallen-Key filters with their own drive, two envelopes, a modulation generator, an external signal processor and a thirty-five socket patch bay you wire with the mouse. There is no plug-in to install, no account, and no upload - the audio is generated on your own machine, in the browser's audio thread.
It is a whole instrument on screen rather than a page about one. The front panel is drawn in the browser - knobs you drag, switches you throw, lamps, an oscilloscope and the patch bay you wire by dragging cables between sockets - and you play it from your computer's own keyboard, so nothing has to be plugged in before it makes a sound. A MIDI controller works too, in a browser that implements Web MIDI.
It is modelled on a classic 1978 Japanese semi-modular monosynth, written from published specifications and from a photograph of a front panel. It is an independent tribute and is not affiliated with, endorsed by or connected to any manufacturer. No manufacturer's code, samples, firmware or artwork was used in making it. Where the original instrument is named anywhere in the source, it is named factually, to say what a circuit is modelled on.
Why it was built
Always keep your synth within reach. A physical semi-modular sitting in another room means losing track of patch ideas before you can patch them. This tool mirrors the exact panel, signal path, and patch bay on any machine you're using. Test a setting, save it, and grab a share link right when inspiration hits.
It's built for experimenting on the go. Export your creations as files or URLs, then recreate them seamlessly on your actual hardware whenever you're ready.
Where the mathematics comes from
Every oscillator, filter, saturator and envelope in this instrument was written from freely published literature - textbooks, conference papers, and standards documents that anyone can read. Nothing was disassembled, sampled or copied from a product. The main sources:
- Robert Bristow-Johnson, Audio EQ Cookbook - the biquad coefficient formulae, which are also the definition the Web Audio specification gives its own filter node. w3.org
- The Web Audio API specification itself, for the node semantics everything is built on. w3.org
- Vadim Zavalishin, The Art of VA Filter Design - the topology-preserving transform and zero-delay feedback the two Sallen-Key filters are solved with, which is what lets their cutoff sweep under an envelope without zipper noise and what allows a saturator in the resonance path.
- The polynomial band-limited step (PolyBLEP) for the oscillators, after E. Brandt, “Hard sync without aliasing”, ICMC 2001 - the correction that keeps a six-octave sweep free of the descending whine a raw phasor produces.
- Julius O. Smith III's online books on digital filters and physical audio signal processing (CCRMA, Stanford) - delay lines, interpolation, and the general apparatus. ccrma.stanford.edu
Every source listed here is published and freely available, so the provenance of the mathematics can be checked against the literature rather than taken on trust.
Free to use, and with no warranty at all
MonoSynth is free to use. There is no charge, no account and no licence to accept. By using it you agree to the terms on the legal information page.
This is a work-in-progress version 0.0.3-alpha. It is provided “as is”, with no warranty of any kind: no promise that it works, that it keeps working, that it sounds like anything in particular, or that a patch you save today will load tomorrow. Features will change and break. Export anything you care about as a file. Do not rely on it for work you cannot afford to lose.
Bugs, ideas and complaints are genuinely welcome - . Who operates this site, and how to reach them, is on the legal information page.
Feel free to bookmark, print or copy this page - it is all written out here for you, not tucked behind a button inside the app.