Skip to content

Quetourah/jamsession

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jam Session - Live

Jam Session a multi user collaborative platform where you can live code music in a web browser in real time. You can start live app by clicking here.

Folder Structure:

frontend/app : contains all of our react files
backend/server: contains a Flask server for testing
images/wikis: assets for wikis
jamsession_core : files to start the core services using Docker

Local Development:

  • Clone repo into the local device

  • Get inside the folder you just created by cloning the repository by typing:

    cd jamsession

  • Inside you will find three main folders:

    • backend
    • frontend
    • jamsession_core
  • Enter frontend/app folder by typing:

    cd frontend/app

  • Update the config.js file in the src folder with your database information. We used Amazon Web Services (AWS) Cognito, AppSync, and DynamoDB.

  • You need to install the node modules before running the app, enter the following command to install the modules:

    npm install

  • In this folder type the following command to start the local development:

    npm start

    Runs the app in the development mode.
    Open http://localhost:3000 to view it in the browser.The page will reload if you make edits.You will also see any lint errors in the console.

  • Type the following command to run the all tests:

    npm test

    Launches the test runner in the interactive watch mode. See the section about running tests for more information. All the tests are located in src/tests

  • Jamsession core is setup in a remote server, if you wan to run it locally follow this README

Jam Session Core:

High Level Description

This is a Docker container that hosts a basic Flask script that pipes the code of whatever the user has drafted on the frontend and send it to sclang/Supercollider to be interpreted and generate the sound. The sound generated in the container is being streamed to a socket. The socket can be played with an HTML5 media player.

More details about the implementation:

After weeks of tweaking and messing around with running Supercollider and Foxdot headless, we have abandoned Foxdot integration even though it is the most popular live coding platform.

About

Jamsession is a multi user collaborative platform for live coding enthusiast. Test the MVP here:

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •