Internal fork from mean.coffee
- Environment:
Homebrew (brew): ONLY IF OSX
- install instructions or
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- install instructions or
Ruby (rvm / ruby / foreman):
- rvm:
- IMPORTANT do not use sudo!
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3\curl -sSL https://get.rvm.io | bash -s stable
- ruby:
rvm install ruby-2.1.3- Note if there are problems here it is usually with OSX command line tools being out of sync and missing gcc deps (resolved with brew) and osx commandline tools updates
- foreman:
gem install foreman
- rvm:
Node (nvm / node / npm):
nvm:
brew install nvmor if not osx use google / probabalyapt-get install nvm
node: (via nvm)
nvm install 0.12.7- .nvmrc: (for good measure) tells nvm which node to load by default
echo 0.12.7 >> ~/.nvmrc
npm: This is an optional update to make npm newer than the defaulted npm released with 0.12.7
npm install -g npmbottom line any npm > 2.12.0 should be good
node global deps (convenience):
./scripts/misc/devPreInstall(installs things like coffeescript, gulp, karma and junk so the shell can pick it up easily withoutnpm run whatever)- JWI: it shouldn't actually be necessary to install anything globally to run our app... ideally "npm install" should handle everything, which also makes Heroku setup simpler
Application (Make sure you are at the root path of the source code base for map! Where package.json is present.)
npm installRun gulp (for dev)
Requires Postgress Database Locally:
foreman run gulporforeman run scripts/runDev
Remote Heroku Database:
foreman run scripts/runDev --bare-server
Run the server (HEROKU ONLY)
foreman start
- forever script + git hook for custom deployment
- nginx-buildpack for Heroku see above
- make nginx installer work on more than OSX
- npm run gulp-prod (for prod)
- figure out if global prequisite install is actually necessary
- set things up so "foreman start" will do what we want for every environment
- fork memoizee and add option for understanding promises (so it can, at least optionally, choose not to cache rejected promises
- fix coffescript source-mappings for stacktraces / log output
- fix warn logging
