Skip to content

Purdue-Artificial-Intelligence-in-Music/Companion-code

Repository files navigation

Companion

Companion is your on-demand accompanist, allowing you to practice with professional-quality accompaniment anytime, anywhere.

System Requirements

  • OS: Windows 10/11 or Linux (macOS may work but is untested)
  • Memory: 16 GB RAM (recommended)
  • Disk Space: 10 GB for library installations
  • Audio: Microphone and headphones (to prevent feedback)

Getting Started

Running the Backend Server Locally

  1. Open a terminal and navigate to the backend directory:
    cd backend
  2. Run this command in a Python 3.8 conda environment to install all dependencies:
    python setup.py install
  3. If you are on Windows, install FluidSynth and add "~/fluidsynth/bin" to your path. If you are on Linux, install FluidSynth and add it to your path.
  4. Start the program:
    python main.py
  5. Start the Flask server (if you want to use the frontend):
    python app.py

Running the Frontend Locally

  1. Install Node.js from nodejs.org.
  2. Install the Expo CLI:
    npm install -g expo-cli
  3. Navigate to the frontend directory:
    cd frontend/companion-app
  4. Install project dependencies:
    npm install
  5. Start the frontend:
    npm run web