generative.fm
A platform for playing generative music in the browser.
Overview
Audio
This site uses Tone.js to play audio in the browser through the Web Audio API.
Samples
Most of the samples are provided by the Versilian Studios Chamber Orchestra 2 Community Edition and the Versilian Community Sample Library. Other samples provided by the Sonatina Symphonic Orchestra. The singing bowl samples were provided by Kasper. Lo-Fi Hip-Hop Drum Kit samples are from ItsLucid. All other samples were specially recorded for the site. Sample files can be found in the generative-music/samples.generative.fm repository.
Music
Source code for the music generators can be found in the generative-music/pieces-alex-bainter repository.
Release Schedule
See milestones for scheduled releases and to see which features and bug fixes will be included in each.
Issues and Feedback
Problems or general feedback can be reported here on Github or by sending an email to alex@alexbainter.com. Thanks!
Status
You can view which new features and bug fixes are currently planned, in progress, or waiting to be deployed to the site by visiting the Generative.fm project board.
Installation
You will need Node.js installed on your machine.
- Clone to your machine.
- Navigate to the project's directory.
- Run
npm i
. - Run
npm start
. - Navigate to localhost:9999.
Local Sample Files
Requests for sample files from the generative.fm sample CDN are blocked, see #38. In order to play music locally, you will need to follow these instructions:
- Install the build prerequisites specified in BUILD_README.md.
- Clone the generative-music/samples.generative.fm repository to a directory adjacent to the one this project was cloned to.
- Run
npm i
. - Run
npm run build:samples
.
This will create the sample files on your machine to be served during local development.
Contributing
See CONTRIBUTING.md.