BrewFinder is a MEAN stack app that allows users to record sightings of specific beers at their favorite stores. It integrates with BreweryDB.org for beer and brewery information, Google Maps Places for store location information, Google, Facebook, and Twitter for OAuth login, and has a rich web app experience for mobile devices. The client application is fully responsive, and a full JSON API exists.
- Git
- Node.js and npm Node ^4.2.3, npm ^2.14.7
- Bower (
npm install --global bower
) - Ruby and then
gem install sass
- Grunt (
npm install --global grunt-cli
) - MongoDB - Keep a running daemon with
mongod
-
Run
npm install
to install server dependencies. -
Run
bower install
to install front-end dependencies. -
Run
mongod
in a separate shell to keep an instance of the MongoDB Daemon running -
Run
grunt serve
to start the development server. It should automatically open the client in your browser when ready.
Run grunt build
for building and grunt serve
for preview.
Development mode runs the web server on port 9000.
Production mode runs the web server on port 8888. Running production behind a reverse proxy to port 443 or 80 is highly recommended to prevent giving the NodeJS process root access. The api is available at http(s)://SERVER_IP:PORT/api
.