This is the audio engine of Synthia, which I originally built in the summer of 2023 using only vanilla JavaScript and the WebAudio API.
Though Synthia has grown to use React for the front end and Flask/PostgreSQL to manage users and save synth patches on the back end, here I've pared the project down to its simpler beginnings for submission as part of my application to the Recurse Center.
A desktop or laptop computer with an English QWERTY keyboard.
Synthia has not yet been tested on mobile devices or localized to other keyboards.
- 3 oscillators (sound generators) that can produce sine, sawtooth, square, or triangle waves
- Independent controls for gain, attack time, and release time for each oscillator
- Polyphonic: play up to six notes at the same time
- Play in any octave
Go to https://www.charliekozey.com/synthia-basic/
Or:
- Clone this repository
- Open
index.html
in your browser - Make some noises!