Git Product home page Git Product logo

cocompose's Introduction

CoCompose

Overview

Write music with friends! A collaborative music composition app

http://52.34.56.119:3000/

Instructions

  • Left-click to add notes
  • Right-click to delete notes

Implementation

3 models: note, sheet, user

Security:

  • requires account and login to access any page
  • requires authentication to view specific sheet music pages
  • requires ownership to share/delete pages
  • protected against:
    • XSS
    • CSRF

Client Side:

  • Composer UI uses HTML canvas
  • MIDI.js used to help with playback
  • Bootstrap used for styling and formatting
  • Socket.io used to communicate with server in near real time

Lead Authors:

  • app.js: Kim
  • midiConv.js: Lisandro
  • test
    • test.js: Stuart
  • templates
    • index.handlebars: Stuart
    • register.handlebars: Stuart
    • sheet.handlebars: Stuart
    • sheets.handlebars: Jessica
    • signin.handlebars: Stuart
  • views
    • composer.ejs: Lisandro
    • error.ejs: Lisandro
    • index.ejs: Lisandro
  • routes
    • index.js: Stuart
    • sheets.js: Stuart
    • users.js: Jessica
  • models
    • note.js: Kim
    • sheet.js: Jessica
    • user.js: Stuart
  • public
    • javascripts
      • model.js: Lisandro
      • view.js: Lisandro
      • controller.js: Lisandro
      • piano.js: Kim
      • index.js: Stuart
      • sheets.js: Stuart
      • users.js: Stuart
      • inc: Imported from midi.js module
      • midijs: Imported from midi.js module
      • soundfont: Imported from midi.js module
    • stylesheets:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.