Jfxr is a browser-based tool to generate sound effects, for example for use in games. It was inspired by bfxr, but aims to be more powerful and more intuitive to use.
Start using it right now at jfxr.frozenfractal.com.
Yes! Any sound you create with jfxr is entirely yours, and you are free to use it in any way you like, including commercial projects. If your project is commercially successful, I would really appreciate a donation (see below).
Attribution is not required, but I would really appreciate if you could link back to jfxr in some way. I would also be delighted if you send me a link to your creation!
Thanks for asking! If you want to express your appreciation for this project, you can send donations via the in-app donation button or this PayPal link.
Compared to bfxr, the only missing feature is the mixer (which mixes multiple generated sounds together). There is an open issue to address that. Some filters also have a slightly different meaning, most notably the bit crunch, which is a real bit crunch rather than a downsample.
Jfxr has been tested on the latest Chrome and Firefox, on Linux and OS X. In other modern browsers, I guarantee that the sliders will look broken, but hopefully everything else will still work.
Please report any issues you find to the issue tracker on GitHub.
Jfxr uses Angular.js for its UI and module dependency management. It relies on several modern web technologies: WebAudio, canvas2d, local storage and of course CSS3.
To assemble the JavaScript files into a runnable whole, you need Node.js installed.
To install the development dependencies, run:
cd app
npm install
Then, to build the app:
npm run build
This produces output in the app/dist
directory, which can be used locally or
copied to a webserver.
The sound synthesis code can be used as a standalone library. To build it separate from the app:
cd lib
npm install
npm run build
This produces an npm package in the lib/dist
directory, which can be used
as-is or published to the npm registry.
For development, there is also a script to continuously rebuild on change:
npm run watch
For further details, see lib/README.md
or the documentation
on npmjs.com.
The code itself is under a three-clause BSD license; see LICENSE for details.
Any sound effects you make are entirely yours to do with as you please, without any restrictions whatsoever.