Procure.io Community Version 
Procurement software for the 21st century.
What's this "Community Version"? Nearly identical to our SaaS product, just with some of the multi-tenancy code taken out. Try the demo.
Login to the demo as an officer with
user1@example.comandpassword.
Setting up your development environment
git clonethe repobundle install- copy
config/database.yml.exampletoconfig/database.ymland configure it as needed rake db:setuprake db:seed:examplerails serveror run with your choice of server (we like pow)rake jobs:workto run delayed_job worker
You'll all set to develop Procure.io. Login with
user1@example.comandpassword.
Deploying to Heroku
Since this is a Rails 4 app, it requires some extra steps the first time you deploy it.
heroku create YOUR_APP_NAMEheroku labs:enable user-env-compileheroku addons:add heroku-postgresql- Setup (or disable) the mailer in production.rb
- Add the environment variables specified in
.powenv.example - Add an additional environment variable with the database URL
heroku configto see the existing database URLheroku config:set DATABASE_URL="YOURDATABASEURLHERE"
git push heroku masterheroku run rake db:migrate- Launch a console
heroku run rails consoleand: - Create an organization:
Organization.create(name: "Oakland", email: "example@oakland.com", username: "oakland") - Create a user:
User.create(email: "adam@dobt.co", name: "Adam Becker", password: "password") - Assign that user to the organization's owners team:
Organization.first.owners_team.users << User.first
A couple notes:
-
Procure.io uses delayed_job to run tasks asynchronously. Running a worker dyno costs $34.50/month, so if you want to avoid this charge, you'll have to disable the worker in the
Procfile, and configure delayed_job withDelayed::Worker.delay_jobs = false. -
Procure.io is configured to use AWS for storing file uploads. You'll need to set environment variables for this too (specified in
/.powenv.example), or change your application configuration to use another storage provider. Note that you can't use:filestorage on Heroku, as the filesystem is not permanently writable.
Contributing
Procure.io is very early-stage alpha software, but if you're interested in getting your hands dirty, contributions are more than welcome. Your workflow should look something like this:
- Fork the repo
- Write some sweet code in a feature-branch
- Write some tests (unit & acceptance, currently) that cover the functionality you added
- Create a pull request
Copyright
Released under the GNU GPLv3 license. Neither the name of the Department of Better Technology nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

