the website that will one day power https://resamplr.com
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
migrations
src
.env
.gitignore
Cargo.lock
Cargo.toml
Justfile
README.md
Rocket.toml
Vagrantfile
elm-package.json
gulpfile.js
package-lock.json
package.json

README.md

Resamplr

Resamplr is a virtual instruments and sampler community + store. Resamplr is currently running Ruby on Rails. This is an effort to port the site to a more managable language.

Why rewrite in Rust?

RoR is great - but the magic can be too much. Resamplr outgrew Rails' approaches, and maintaining the original Ruby codebase became much too cumbersome.

Resamplr's new stack also uses Elm, a reactive and functional front-end language with static typing and no runtime errors.

Why open source?

The original code is not open-sourced or "free". However, because Rust is still nascent when it comes to web, we thought it could be a valuable learning tool for the community.

Running

Make sure you have Vagrant and VirtualBox installed.

Simply run vagrant up and then vagrant ssh. Navigate to the working directory at /vagrant/.

Note: You'll also need to run cargo install diesel_cli --no-default-features --features "postgres" as the Vagrant box accidentally omits it. This should be fixed in future versions.

To build, run just dev-build. To serve and watch for changes, instead run just dev-run.

Running without Vagrant

Because I use a Windows system, I prefer using Vagrant. However, if you don't want to use Vagrant and would rather install it yourself, you'll need a few things:

  • Postgresql and it's development libraries
  • Diesel CLI tools
  • Rust Nightly
  • NPM / Node (unfortunately)

Known problems

  • If you run into a problem where NPM won't install stuff, make sure you use the --no-bin-links flag when installing on a Windows host.

License

This software is currently unlicensed (Meaning we haven't yet come up with something sensible). Resamplr is a commercial project, and will require some scrutiny when selecting a license.

In the meantime, you can follow these "don't be a jerk" rules:

  • Don't clone this codebase and create a competing project
  • Don't sell this code to others or mislead others in any way
  • Do feel free to learn and steal snippets or ideas
  • Do feel free to submit pull requests and otherwise contribute