Giter Club home page Giter Club logo

komposair's Introduction

Actions Status

Komposair

Komposair was selected by TensorFlow for the TensorFlow Community Spotlight program on December 2020

Komposair is a web app that lets musician create melodies using AI. Visit Komposar at https://www.komposair.com/

  • Create melodies based on your motif
  • Explore other melodies created by the community
  • Save your melodies, download them as midi files, vote for your favorites and comment them

In the browser

  • Komposair needs no installation you can use it right in your browser
  • We use Tone.js and Magenta so you can hear the melodies in the browser or export them as a midi file if you prefer

You can also:

  • Upload your model (to be done, for the moment feel free to send us and email with your model)
  • Find a random melody if you feel lucky

The models to create melodies will be improved, the melodies are generated using motifs of the users. The motif is one building block for melody compositions. Find more information about motifs

Arnold Schönberg defines a motif as:

a unit which contains one or more features of interval and rhythm [whose] presence is maintained in constant use throughout a piece

Tech

Komposair uses several open source projects to work properly:

  • Django - A high-level Python Web framework that encourages rapid development and clean, pragmatic design
  • Start Bootstrap - Simple Sidebar - Simple Sidebar is an off canvas sidebar navigation template for Bootstrap created by Start Bootstrap.
  • Vexflow - online music notation rendering API. It is written completely in JavaScript and runs right in the browser. VexFlow supports HTML5 Canvas and SVG.
  • [Twitter Bootstrap] - Great UI boilerplate for modern web apps
  • Magenta.js - a collection of TypeScript libraries for doing inference with pre-trained Magenta models
  • Tensorflow - Open source library to help you develop and train ML models
  • Music21 - A toolkit for computer-aided musicology
  • Tone.js - a Web Audio framework for creating interactive music in the browser
  • Django Markdownify - A Django Markdown filter
  • Handlebars.js - Minimal templating on steroids

And of course Komposair itself is open source with a public repository on GitHub.

CS50's Web Programming with Python and JavaScript

Komposair is my final project for the course CS50's Web Programming with Python and Javascript. I tried to use many of the concepts taught by Prof. Bryan Yu. These are the files insides Komposair:

  • Komposair: Root project: settings, urls, init...
  • Media: Media files of the project
  • Melody: This is the main app of Komposair, with the static files, templates views
  • Users: This is the app that handles user registration, login, logout

The project is mobile responsive and uses Javascript and Django with more than one model. I think that it satisfies the requirements of the course.

Support

Want to contribute? Great!

Please feel free to contact me if you want to send a model or contribute in any other way

To-dos

  • Write more models train on different genres
  • Add more options, such as, other time signatures,
  • Add more features in the melody detail view: Suggested lyrics and harmonizaties using AI

License

MIT

Free Software, Hell Yeah!

komposair's People

Contributors

juancopi81 avatar

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.