Loops With Friends is a collaborative music-making web app built with Elixir/Phoenix, Elm, and the WebAudio API.
It supports up to seven users in a given "jam," in which each user gets their own music loop. Each user can start and stop their loop to make music in real time with the other users in the jam. The app automatically creates and balances additional jams as users join and leave.
See these blog posts for more on how it's built.
-
Install Elixir, Phoenix, and dependencies.
-
Clone and
cd
into the repository.
git clone https://github.com/jeffcole/loops_with_friends.git
cd loops_with_friends
- Install Elixir dependencies.
mix deps.get
- Create and migrate the database.
mix ecto.create && mix ecto.migrate
- Install asset dependencies.
npm install
- Install Elm packages.
cd web/static/elm
../../../node_modules/.bin/elm-package install
cd ../../..
- Run the server.
mix phoenix.server
- Visit
http://localhost:4000
in the browser.
Run the test suite with mix test
.
The loops used by the app are Apple Loops.
Copyright © 2016 Jeff Cole. See LICENSE for more information.