pace
Pace is a registration and management application for running events and competitions.
Features
The list of our issues/features can be found on our trello board.
Demo
You can check out the latest version of the app on heroku: https://dev-pace.herokuapp.com/
Dev Setup
Pace is currently based on express.js and node, therefore you will need both on your machine. It also uses Vagrant for the database.
- To install Vagrant, go here. Or if you have brew cask on your machine, just do the following:
brew cask install vagrant
. - To install node, go either to https://nodejs.org/ or if you are using a mac & brew use the following command:
brew install node
. - To get all the other dependencies and be able to start pace locally, just navigate to the pace folder and run:
npm install && gulp dev-setup
- To initialize the database:
gulp create-db
To look at the db in your terminal, just connect to the vagrant box (from the postgres directory) via vagrant ssh
and type psql.
If you really don't want to use vagrant
it is possible to use docker instead. Run this to get the database up:
docker run -p 5432:5432 -d --name 'pace-postgres' -e POSTGRES_PASSWORD='pgtester' -e POSTGRES_DB='pace' -e POSTGRES_USER='pgtester' postgres
Starting
Just run gulp
and open http://localhost:3000 in your browser.
Running tests
For unit tests: gulp test
For integration tests: gulp test-integration
For functional tests: gulp test-functional
(install selenium if needed: gulp selenium-install
)
Running jshint
Here you go: gulp lint
Running in docker
Run pace inside docker:
docker-compose up
Create the database needed:
docker-compose run pace-app /usr/src/app/node_modules/db-migrate/bin/db-migrate up
Pace will be reachable on http://localhost:3000
More info
If you would like to contribute, we have also few blog post explaining our technical choices and setup: