This is managed through Vagrant cuz its more awesome. Why have just a virtualenv when you can have a whole virtual machine? yeah, exactly. Here's what you need to do
- Install VirtualBox
- Install Vagrant
- clone the repo to your development machine
- IMPORTANT: you will need to copy a couple of files into your local filesystem manually because they contain sensitive tokens and we don't want that in a public git repo. ask Dan or Ben or some other person who spends all day on a computer for these.
- copy
create_db.sql
intolunchmove/setup/private/create_db.sql
- copy 'set_env.sh' into
lunchmove/setup/private/set_env.sh
host$ vagrant up
host$ vagrant ssh
vm$ cd /vagrant
vm$ python manage.py runserver 0.0.0.0:8080
- in your browser you can now visit localhost:8080 and have you some lunchmoves
- login to slack and check out the lunchmove private channel, which is where the dev environment posts messages to
The front end assets are located in the public/assets folder. Packages are managed via NPM. To install the front end assets, navigate to the folder and run the following commands:
$ cd static/app
$ npm install
$ npm run setup
During development, to recompile the javascript and stylesheets:
$ gulp build
The compiled javascript and stylesheets are checked into repository, so if you make any changes to them, make sure they've been recompiled before pushing.
- make a Heroku account
- download the heroku toolbelt and login on the command-line to your heroku account
- link your local git repo to the heroku app like this
heroku git:remote -a lunchmove
git push heroku master