npm install
npm run serve
npm run build
npm run test
npm run lint
A tool to experiment with music harmony, learn music theory and compose music.
Home Page: https://sforzando.herokuapp.com/
npm install
npm run serve
npm run build
npm run test
npm run lint
Needs more responsiveness.. one tiny change is to have
.keyboard { width: 100% } instead of 100vw
as seen here: https://dev.to/sustained/comment/f650
A nice and useful feature would be the support of user inputs to play sounds.
Considered inputs are:
My 2 cents on the computer keyboard: A really good feature that is yet to be found on any web-based virtual piano is the ability to configure key mapping: each keyboard is different, in size, shape and layout. Some default mapping for qwertys is good, customizable mapping is great.
Right now the app loads 12MB of piano samples immediately, firing off more than 70 HTTP requests!
We should probably default to a basic synthesized sound.
In addition to the option of being able to switch between sounds/instruments via the UI, though, we should also allow you to specify to "load piano samples by default".
Per the discussion with Benoit we should try to put the active note into an object wrapped by Vue.observable
and to get rid of the icky DOM manipulation.
But before this we should experiment with Tone events and the scheduler more, in general, as well as MIDI because we need to know how best to represent our musical data first.
We should work on the piano styling:
Per discussion on Discord:
There are probably more things but this is all I can think of for now.
After this commit the note/octave offset-related stuff works really well for most cases but there are still a few things to think about and fix, mostly relating to < A0 and > C8.
I mean, as much as 88 keys makes sense, there exist now 108-key grand pianos, so we should probably only special-case anything outside of the range C0 - B8.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.