Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/katspaugh/simple-modular-synth
A simple Web Audio-based synth
https://github.com/katspaugh/simple-modular-synth
modular synthesizer web-audio
Last synced: 3 months ago
JSON representation
A simple Web Audio-based synth
- Host: GitHub
- URL: https://github.com/katspaugh/simple-modular-synth
- Owner: katspaugh
- License: mit
- Created: 2024-01-02T14:36:07.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-30T19:42:58.000Z (about 1 year ago)
- Last Synced: 2024-10-08T02:42:13.516Z (4 months ago)
- Topics: modular, synthesizer, web-audio
- Language: JavaScript
- Homepage: https://smod.pages.dev
- Size: 62.5 KB
- Stars: 5
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: MIT-LICENSE.txt
Awesome Lists containing this project
README
# Simple Modular Synth
[Live demo](https://smod.pages.dev/#eyJtb2R1bGVzIjpbeyJpZCI6InNwZWFrZXJzLTAiLCJ0eXBlIjoic3BlYWtlcnMiLCJ4IjoxMDU3LCJ5IjoyNjV9LHsiaWQiOiJsb3dwYXNzLTE3MDU3ODMzNzM1MzEiLCJ0eXBlIjoibG93cGFzcyIsIngiOjY3MSwieSI6MjM0fSx7ImlkIjoiY2xvY2stMTcwNTc4NDQ2NDQxOCIsInR5cGUiOiJjbG9jayIsIngiOjQyMCwieSI6MzgwfSx7ImlkIjoidHJpYW5nbGUtMTcwNTc4NjM3MTQyMiIsInR5cGUiOiJ0cmlhbmdsZSIsIngiOjMzOCwieSI6OTV9LHsiaWQiOiJkZWxheS0xNzA1Nzg2NzE5NzA0IiwidHlwZSI6ImRlbGF5IiwieCI6Nzc2LCJ5Ijo2N30seyJpZCI6InBhbm5lci0xNzA1Nzg2NzUwNDc4IiwidHlwZSI6InBhbm5lciIsIngiOjEwMDcsInkiOjEyMH0seyJpZCI6InBhbm5lci0xNzA1Nzg2NzU5MTQ1IiwidHlwZSI6InBhbm5lciIsIngiOjk5MCwieSI6MzgzfSx7ImlkIjoic2FtcGxlQW5kSG9sZC0xNzA1Nzg2OTM3NTE1IiwidHlwZSI6InNhbXBsZUFuZEhvbGQiLCJ4IjoxMzYsInkiOjIwN30seyJpZCI6Imxmby0xNzA1Nzg3MDMzMzU1IiwidHlwZSI6ImxmbyIsIngiOjk1OCwieSI6MjV9LHsiaWQiOiJ3YXZlZm9ybS0xNzA1Nzg3MDkwMDY2IiwidHlwZSI6IndhdmVmb3JtIiwieCI6NzA5LCJ5Ijo0NTN9XSwiY29ubmVjdGlvbnMiOlt7ImZyb20iOiJ0cmlhbmdsZS0xNzA1Nzg2MzcxNDIyLW91dHB1dCIsInRvIjoibG93cGFzcy0xNzA1NzgzMzczNTMxLWlucHV0LTAifSx7ImZyb20iOiJsb3dwYXNzLTE3MDU3ODMzNzM1MzEtb3V0cHV0IiwidG8iOiJkZWxheS0xNzA1Nzg2NzE5NzA0LWlucHV0LTAifSx7ImZyb20iOiJkZWxheS0xNzA1Nzg2NzE5NzA0LW91dHB1dCIsInRvIjoicGFubmVyLTE3MDU3ODY3NTA0NzgtaW5wdXQtMCJ9LHsiZnJvbSI6InBhbm5lci0xNzA1Nzg2NzUwNDc4LW91dHB1dCIsInRvIjoic3BlYWtlcnMtMC1pbnB1dC0wIn0seyJmcm9tIjoibG93cGFzcy0xNzA1NzgzMzczNTMxLW91dHB1dCIsInRvIjoicGFubmVyLTE3MDU3ODY3NTkxNDUtaW5wdXQtMCJ9LHsiZnJvbSI6InBhbm5lci0xNzA1Nzg2NzU5MTQ1LW91dHB1dCIsInRvIjoic3BlYWtlcnMtMC1pbnB1dC0wIn0seyJmcm9tIjoic2FtcGxlQW5kSG9sZC0xNzA1Nzg2OTM3NTE1LW91dHB1dCIsInRvIjoidHJpYW5nbGUtMTcwNTc4NjM3MTQyMi1pbnB1dC0wIn0seyJmcm9tIjoidHJpYW5nbGUtMTcwNTc4NjM3MTQyMi1vdXRwdXQiLCJ0byI6InNhbXBsZUFuZEhvbGQtMTcwNTc4NjkzNzUxNS1pbnB1dC0wIn0seyJmcm9tIjoiY2xvY2stMTcwNTc4NDQ2NDQxOC1vdXRwdXQiLCJ0byI6InNhbXBsZUFuZEhvbGQtMTcwNTc4NjkzNzUxNS1pbnB1dC0xIn0seyJmcm9tIjoiY2xvY2stMTcwNTc4NDQ2NDQxOC1vdXRwdXQiLCJ0byI6Imxvd3Bhc3MtMTcwNTc4MzM3MzUzMS1pbnB1dC0xIn0seyJmcm9tIjoiY2xvY2stMTcwNTc4NDQ2NDQxOC1vdXRwdXQiLCJ0byI6Imxvd3Bhc3MtMTcwNTc4MzM3MzUzMS1pbnB1dC0yIn0seyJmcm9tIjoidHJpYW5nbGUtMTcwNTc4NjM3MTQyMi1vdXRwdXQiLCJ0byI6ImRlbGF5LTE3MDU3ODY3MTk3MDQtaW5wdXQtMSJ9LHsiZnJvbSI6Imxmby0xNzA1Nzg3MDMzMzU1LW91dHB1dCIsInRvIjoicGFubmVyLTE3MDU3ODY3NTA0NzgtaW5wdXQtMSJ9LHsiZnJvbSI6ImNsb2NrLTE3MDU3ODQ0NjQ0MTgtb3V0cHV0IiwidG8iOiJwYW5uZXItMTcwNTc4Njc1OTE0NS1pbnB1dC0xIn0seyJmcm9tIjoibG93cGFzcy0xNzA1NzgzMzczNTMxLW91dHB1dCIsInRvIjoid2F2ZWZvcm0tMTcwNTc4NzA5MDA2Ni1pbnB1dC0wIn1dfQ==)
## Usage
1. Checkout the repo
2. Start a local web server, e.g. `python3 -m http.server --cgi 8080`
3. Open http://localhost:8080/ in the browser
4. Create modules by clicking anywhere on empty space and typing the name of a module
4. Connect modules by clicking on little circles representing their inputs (on the left) and outputs (on the right)
5. Remove connections by clicking on connecting lines (patch cables)
6. Remove modules by dragging them off the screen