This is the source code for the BSA Tree Recycle web application. Boy Scout troops can use this app during their annual Christmas tree recycling fundraiser to record the location of tree pickups. As drivers mark the locations of tree pickups using their location-enabled mobile devices, those locations appear on the map page in real time and are recorded for future reference.
###The Stack
This site is hosted by Heroku, and is built on node.js using the express web framework. Data is stored in a MongoDB database hosted by MongoHQ. Pages are built with the help of the outstanding Bootstrap framework and rendered using Handlebars templates. The whole thing is written in JavaScript and HTML5.
###Installation and setup
This is fairly easy to install and run locally. Even if you don't intend to deploy to Heroku, start with their great articles Getting Started with Heroku and Getting Started with Node.js on Heroku.
You'll need node.js, NPM and a local installation of MongoDB with the connection string in a local .env
file:
MONGOHQ_URL=mongodb://username:password@localhost:27017/pickups
(Note the collection name "pickups")
Your .env
file will also need a setting that contains your Google Maps API key:
GOOGLE_MAPS_API_KEY=<your API key>
You'll also need the following dependencies from NPM:
express
(web framework for node.js)hbs
(Handlebars engine for express)mongodb
(MongoDB driver for node.js)
###Roadmap
- 0.9.x (Summer 2013) Support for recent versions of Safari and Internet Explorer, and beta testing
- 1.0.x (Fall 2013) Production release
###Bitly
The bitly address http://bit.ly/YuqXLa might be easier to type into those tiny smartphone keyboards.
###Contribution
Comments, questions, feedback and pull requests are welcome.