The first open source crowdfunding platform for creative projects in the world
Ruby HTML CSS JavaScript Other
Pull request Compare This branch is 704 commits behind catarse:master.
Latest commit d994797 Apr 27, 2017 @adrianob adrianob fix error message
Permalink
Failed to load latest commit information.
.magick added imagetragick sec fixes May 4, 2016
app remove validation Apr 26, 2017
bin add default rails 4.2 config Oct 19, 2016
config fix error message Apr 27, 2017
db Adds public_name to follow-friends endpoints [#144033071] Apr 24, 2017
deploy Adds production docker-compose file Aug 18, 2016
doc adding notification examples to repo Apr 29, 2014
lib ajust statment timeout when refreshing some views Apr 19, 2017
public Added statis sitemap.xml index. Fix sitemap.rb Sep 13, 2016
spec fix spec Apr 26, 2017
vendor added the default folder for assets May 5, 2012
.bowerrc Adds bower as front-end dependecies manager and updates file structure May 28, 2015
.buildpacks Adds node.js to Heroku build Jun 1, 2015
.dockerignore Adds dockerignore to prevent unnecessary files to be on the image Aug 17, 2016
.gitignore move secrets to sample, to avoid bug when using from initializers Sep 14, 2016
.python-version only validate birth_date when user account_type is pf Mar 8, 2017
.rspec reset dev May 17, 2012
.ruby-version update ruby to 2.3.1 Jul 26, 2016
.travis.yml Updates ruby to 2.2.3 Sep 9, 2015
Cheffile Fix display :99.0 not being configured on Vagrant Feb 27, 2013
Cheffile.lock Fix display :99.0 not being configured on Vagrant Feb 27, 2013
Dockerfile Adds Dockerfile for production Aug 17, 2016
Gemfile update catarse_pagarme Apr 19, 2017
Gemfile.lock update catarse_pagarme Apr 19, 2017
MIT-LICENSE Updated the Copyright year on the license and readme to 2016 Jan 8, 2016
Procfile added worker_rdstation to Procfile Sep 8, 2016
README.md added list of payment engines for catarse project Mar 8, 2017
RUNNING_WITH_DOCKER.md Update RUNNING_WITH_DOCKER.md Mar 20, 2017
Rakefile Prevents error by rake migration on production Aug 17, 2016
Vagrantfile Update vagrant file to install ruby 2.1.2 Jul 21, 2014
app.json Adds app.json to use Heroku Review Apps feature Jun 2, 2015
bower.json update catarse.js to 1.0.31 Apr 25, 2017
circle.yml sandbox deploy should be done without circle Aug 17, 2016
config.ru fix newrelic developer mode Feb 18, 2015
dev.Dockerfile Adds build instruction to docker-compose file to build an image with … Aug 24, 2016
docker-compose.yml Adds test container to run tests Sep 1, 2016
package.json test deploy with bower install in package.json Jun 2, 2015

README.md

Catarse

Circle CI Coverage Status Code Climate

The first crowdfunding platform from Brazil

An open-source crowdfunding platform for creative projects

Welcome to Catarse's source code repository. Our goal with opening the source code is to stimulate the creation of a community of developers around a high-quality crowdfunding platform.

You can see the software in action in http://catarse.me. The official repo is https://github.com/catarse/catarse

Getting started

Dependencies

To run this project you need to have:

Setup the project

  • Clone the project

      $ git clone https://github.com/catarse/catarse.git
    
  • Enter project folder

      $ cd catarse
    
  • Create the database.yml

      $ cp config/database.sample.yml config/database.yml
    

    You must do this to configure your local database! Add your database username and password (unless you don't have any).

  • Install the gems

      $ bundle install
    
  • Install the front-end dependencies

      $ bower install
    

    Requires bower, which requires Node.js and its package manager, npm. Follow the instructions on the bower.io website.

  • Create and seed the database

      $ rake db:create db:migrate db:seed
    
  • Configure the API server

    We provide authentication through JWT (JSON Web Tokens) and it can be configured by CatarseSettings into rails console.

      $ bundle exec rails console
      > CatarseSettings[:api_host] = "http://localhost:3004" # postgREST server url
      > CatarseSettings[:jwt_secret] = "gZH75aKtMN3Yj0iPS4hcgUuTwjAzZr9C" # this token is just a valid example
    

If everything goes OK, you can now run the project!

Running the project

  • Run API server

    After downloading PostgREST 0.3.x you can unpack and run the executable as below.

      $ ./postgrest postgres://postgrest@localhost/catarse_development -a anonymous --jwt-secret gZH75aKtMN3Yj0iPS4hcgUuTwjAzZr9C -s 1 -p 3004
    
  • Run Rails server

$ rails server

Open http://localhost:3000

Translations

We hope to support a lot of languages in the future, so we are willing to accept pull requests with translations to other languages.

Thanks a lot to Daniel Walmsley, from http://purpose.com, for starting the internationalization and beginning the English translation.

Payment gateways

Currently, we support pagarme through our payment engines. Payment engines are extensions to Catarse that implement a specific payment gateway logic.

If you have created a different payment engine to Catarse, please contact us so we can link your engine here. If you want to create a payment engine, please join our mailing list at http://groups.google.com/group/catarse-dev

List of payment enginees that are being developed or need to be developed further

https://github.com/catarse/catarse_pagarme (payment engine used by Catarse.me)
https://github.com/devton/catarse_paypal_express (currently out of date and not maintained)
https://github.com/sushant12/CatarseStripe (just starting to be developed and needs extra hands -- please pitch in...)

How to contribute with code

Discuss your plans in our mailing list (http://groups.google.com/group/catarse-dev).

After that, just fork the project, change what you want, and send us a pull request.

Best practices (or how to get your pull request accepted faster)

  • Follow this style guide: https://github.com/bbatsov/ruby-style-guide
  • Create one acceptance tests for each scenario of the feature you are trying to implement.
  • Create model and controller tests to keep 100% of code coverage in the new parts you are writing.
  • Feel free to add specs to committed code that lacks coverage ;)
  • Let our tests serve as a style guide: we try to use implicit spec subjects and lazy evaluation wherever we can.

Credits

Author: Daniel Weinmann

Contributors: You know who you are ;) The commit history can help, but the list was getting bigger and pointless to keep in the README.

License

Copyright (c) 2016 Softa

Licensed under the MIT license (see MIT-LICENSE file)