Meowsynth
The future of feline synthesis.
Copyright 2015-2016 Dave Gurnell. Licensed GPLv3.
Synopsis
Meowsynth is a fun project to demonstrate the serious side of functional programming. It is built on top of Compose, a functional music composition library I developed for training at Underscore.
You can read more about Compose in this blog post and browse the source code for the demo songs on Github.
Contributions to Compose and Meowsynth are welcome! Please jump in to the Underscore Gitter channel to chat about ideas.
Compiling and Running the Code
Meowsynth is a ScalaJS project built using SBT and Li Haoyi's workbench plugin. All you need to build the code is a working JVM. The SBT launcher takes care of the rest:
# Change to the root directory of the project:
$ cd meowsynth
# Launch SBT:
$ ./sbt.sh
# Compile the code from within SBT:
> fastOptJS
# Leaving SBT running, open the debug server running on `localhost:12345`:
$ open 'http://localhost:12345/target/scala-2.11/classes/index-dev.html'
Deploying the Code
# Compile/copy everything to the dist directory:
./build.sh
# Commit the dist directory:
git add .
git commit -m 'Build ready for deployment'
# Deploy to gh-pages:
./deploy.sh