danielweinmann / unlock

Distributed & recurring crowdfunding platform
https://unlock.fund
MIT License
49 stars 21 forks source link

Unlock Build Status Code Climate

Unlock people's pontential through recurring crowdfunding.

Installing

There are two ways to install and run Unlock for development:

Locally

First, make sure your system has the following dependencies:

Then, simply clone the repository:

git clone git@github.com:danielweinmann/unlock.git

And install all the gem dependencies:

cd unlock
bundle install

Copy config/database.sample.yml into config/database.yml, adjusting any options to your database configuration. To create the schema and run the migrations:

rake db:migrate
rake db:setup

At this point, you should have a green build:

rake

...and you're ready to go! :)

Using Vagrant

Before installing, make sure you have recent versions of Git, Vagrant and VirtualBox installed on your development machine.

Then, simply clone the repository:

git clone git@github.com:danielweinmann/unlock.git

And create a Vagrant machine from the root of the project:

cd unlock
vagrant up

This will download and install all the required dependencies, and set up the database for you. To make sure everything worked well, try running the tests:

vagrant ssh -c 'cd /vagrant && rake'

To run the application in development mode:

vagrant ssh -c 'cd /vagrant && rails server'

Payment gateways

Every initiative on Unlock can add and configure multiple payment gateways, which are separate gems which follow the UnlockGateway pattern.

Available gateways

Creating a new gateway

Create a gem that follows the UnlockGateway pattern, integrate it with Unlock's code, and create a Pull Request. See Contributing for details on how to contribute.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

This project rocks and uses the MIT LICENSE.