flowlang-cc/elm-audio-graph/1.0.0

NOTE: the latest version is 1.0.1

Renamed to flow-lang/elm-audio-graph. That is where the repository lives now. It has not been published as a package under the new name.

Versions published as flowlang-cc/elm-audio-graph still install under that name. 1 version of 2 come from the new location (see their notes).

Rerouted (renamed, verified). The GitHub user or repository was renamed. The tag is still there, at the new name. The Lamdera package server serves a copy recovered from https://github.com/flow-lang/elm-audio-graph.

What we checked: The repo moved to github.com/flow-lang/elm-audio-graph. Rebuilt with git archive from commit e754d93d951b of https://github.com/flow-lang/elm-audio-graph (zip prefix flowlang-cc-elm-audio-graph-c15fd28/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 91ad7d84d6b006463368396bfd6d62e1cfc0d914.

The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.

Details · package.elm-lang.org's zip: https://github.com/flowlang-cc/elm-audio-graph/zipball/1.0.0/

elm-audio-graph

The elm-audio-graph package provides a type-safe way of constructing Web Audio processing graphs. It is important to note that this package does not interface with the Web Audio API directly, but provides methods to encode the created audio graph to JSON where your javascript can handle the necessary creation and updating of Web Audio nodes.

Who?

This package is for audio developers that would like to do sound processing on the web but want to minimise their interaction with javascript directly. It seems unlikely that the Elm language itself will support the Web Audio API any time soon, there are more pressing Web APIs that need support for a far greater number of developers, so this package aims to keep Elm developers inside the Elm ecosystem as much as possible when developing audio applications on the web.

Why?

Here is an excellent list of reasons to use Elm in general. Many of these reasons translate to why you would like to use Elm for your audio programming, but you already knew that if you're here!

The biggest benefit to using this package is type safety. The type safety afforded by a static programming like Elm is nice to have when doing front end development, but is absolutely mission critical to have in audio programming. Undefined is not a function or accidentally setting a variable to null may break the UI of your website, but in real-time audio this will break everything. Audio dropouts and silent processing graphs are sure fire ways of impressing nobody with your Web Audio app.