WebChucK: Computer Music Programming on the Web

Michael Mulshine, Ge Wang, Chris Chafe, Jack Atherton, Terry Feng, and Celeste Betancur

Proceedings of the International Conference on New Interfaces for Musical Expression

Abstract:

WebChucK is ChucK—a strongly-timed computer music programming language—running on the web. Recent advancements in browser technology (including WebAssembly and the Web Audio API’s AudioWorklet interface) have enabled languages written in C/C++ (like ChucK) to run in web browsers with nearly native-code performance. Early adopters have explored the many practical and creative possibilities that WebChucK enables, ranging from a WebChucK integrated development environment to interactive browser-based audiovisual experiences. WebChucK has also been adopted as the programming platform in an introductory computer music course at Stanford University. Importantly, by running in any browser, WebChucK broadens and simplifies access to computer music programming, opening the door for new users and creative workflows. In this paper, we discuss WebChucK and its applications to date, explain how the tool was designed and implemented, and evaluate the unique affordances of combining computer music programming with a web development workflow.

Citation:

Michael Mulshine, Ge Wang, Chris Chafe, Jack Atherton, Terry Feng, and Celeste Betancur. 2023. WebChucK: Computer Music Programming on the Web. Proceedings of the International Conference on New Interfaces for Musical Expression. DOI: 10.5281/zenodo.11189155

BibTeX Entry:

  @inproceedings{nime2023_28,
 abstract = {WebChucK is ChucK—a strongly-timed computer music programming language—running on the web. Recent advancements in browser technology (including WebAssembly and the Web Audio API’s AudioWorklet interface) have enabled languages written in C/C++ (like ChucK) to run in web browsers with nearly native-code performance. Early adopters have explored the many practical and creative possibilities that WebChucK enables, ranging from a WebChucK integrated development environment to interactive browser-based audiovisual experiences. WebChucK has also been adopted as the programming platform in an introductory computer music course at Stanford University. Importantly, by running in any browser, WebChucK broadens and simplifies access to computer music programming, opening the door for new users and creative workflows. In this paper, we discuss WebChucK and its applications to date, explain how the tool was designed and implemented, and evaluate the unique affordances of combining computer music programming with a web development workflow.},
 address = {Mexico City, Mexico},
 articleno = {28},
 author = {Michael Mulshine and Ge Wang and Chris Chafe and Jack Atherton and Terry Feng and Celeste Betancur},
 booktitle = {Proceedings of the International Conference on New Interfaces for Musical Expression},
 doi = {10.5281/zenodo.11189155},
 editor = {Miguel Ortiz and Adnan Marquez-Borbon},
 issn = {2220-4806},
 month = {May},
 numpages = {6},
 pages = {200--205},
 title = {WebChucK: Computer Music Programming on the Web},
 track = {Papers},
 url = {http://nime.org/proceedings/2023/nime2023_28.pdf},
 year = {2023}
}