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
Setting up your development environment
git clonethe repo
config/database.ymland configure it as needed
rails 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
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_NAME
heroku labs:enable user-env-compile
heroku addons:add heroku-postgresql
- Setup (or disable) the mailer in production.rb
- Add the environment variables specified in
- Add an additional environment variable with the database URL
heroku configto see the existing database URL
heroku config:set DATABASE_URL="YOURDATABASEURLHERE"
git push heroku master
heroku run rake db:migrate
- Launch a console
heroku run rails consoleand:
- Create an organization:
Organization.create(name: "Oakland", email: "email@example.com", username: "oakland")
- Create a user:
User.create(email: "firstname.lastname@example.org", 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 with
Delayed::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.
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
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.