Devs4Good is a platform where developers can give back to the community by bringing non-profit visions to life.
Devs4Good was built in 7 days by the following members of the 2017 "Rock Doves" cohort at DevBootcamp Seattle: (in alphabetical order)
You can browse the site as a logged-out visitor or, if you're a non-profit organization or developer, you can sign up for an account.
As a logged out visitor, you can...
- browse available projects
- view non-profit and developer profiles
As a non-profit, you can...
- fill out a profile
- provide your tax ID (known as an "EIN"). If provided, we display the name associated with that EIN to provide extra confidence as to your non-profit status
- post a technical project you need help with
- receive notifications about new proposals from developers who want to help with your project
- select a developer proposal for your project
As a developer, you can...
- fill out a profile
- submit proposals for technical projects posted by non-profits
- receive notifications if your proposal is selected
- Ruby on Rails
- ProPublica Non-Profit API
- Dragonfly (image processing)
- Amazon S3 (image storage)
- CKEditor (rich text entry)
- Travis CI
How to install locally
- Clone the repo and navigate to the main directory.
- Install required gems:
- Prepare the database:
bundle exec rake db:create bundle exec rake db:migrate
There is a seed file with Faker-based data if you want to get a quicker view of the site's functionality:
bundle exec rake db:seed.
The app is currently configured to use Amazon S3 for image storage in production (it stores images locally in development/test). You will need to replace with your own S3 information in
config/initializers/dragonfly.rband your own .env file.
The app is currently configured to use SMTP to send email notifications via Gmail. You will need to replace with your own Gmail information in
config/enviroments/production.rb, and in your own .env file.
Run tests using
bundle exec rspec. See test coverage by opening
coverage/index.htmlafter tests completed.