Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Music Box Fun — a web app for making music box songs.

For the background on this project, see:

Repo Overview

This repo contains three services, each in their own directory:

Each service has a README. There are also some project-wide docs here.


First Time Setup

  1. Make sure you have Docker and make installed.
  2. To run the frontend, install the local server: brew install caddy nss
  3. IF you want to run the backend, follow the backend first-time-setup instructions.
  4. IF you want to run frontend tests,
    • Install node/npm
    • Run npm ci --prefix site, to download cypress.

Local development

To run the services locally, you just need to run the make commands:

  • make dev - Runs development environments for the main app (site and api)
  • make stop - Stops any running environments for the main app (site and api)
  • make test - Run tests

For more commands, see the Makefile.

Contributing code

  1. Fork the project on Github.
  2. Create a feature branch for your changes.
  3. Make your changes and commit them to the feature branch.
  4. Ensure the tests still pass locally (make test)
  5. Submit your changes as a PR to the master branch of the main repo.



This project uses the GNU GPLv3 License, amended with the Commons Clause.

This means you get the terms of the GPLv3, excluding the permission to use it for commercial use.

Visual summary of the Permissions Conditions and Limitations of the GPLv3 with a Commons Clause