Webapp to help San Jose public libraries coordinate free community meals.
Code for San Jose
Active Project
Project Status: proposed
No keywords listed for this project
No needs listed for this project
Project Lead:There is no lead for this project currently. Want to lead this project? Let us know!
Project Members:There are no members for this project currently.
Want to help this project grow? Let us know!
share to: 

<<<<<<< HEAD

Running the web app locally

Clone the project and cd into SJPL-MealTally/server.

Stories in Ready


The San Jose Public Library runs a summer program where they provide three meals a day + snacks to children at seven of their branches. The meals come from the YMCA, and left over meals can be served to adults, but the library must pay the YMCA for any meals that don't go to a child.

Because of the above restriction, the library must keep diligent documentation of each meal, and the coordinator sends a weekly report for each library. For the past two summers, a volunteer was needed just for the task of filling out the paperwork at each library at every meal - keeping track of how many new meals were received, left over, how many went to kids, etc. Not only does this mean that the volunteer can't help with other tasks, but it is also creates over 8,000 pages of paperwork per month. Keeping up on the paperwork is a grueling task.

State of the app

Last October, some friends and I hacked together a software solution during a 30-hour hackathon. We have since delivered the mobile and web app to the library, but since this was a quick hack, there are still some tasks that need to be taken care of before the meal program starts back up in May. I am currently the only developer still working with them on the web portion of the project, and my time is limited, plus this seems like a great project for CfSJ to be involved in as it benefits our public libraries. See open issues for a list of current tasks.



The dashboard allows the meal coordinator to keep an eye on meal trends at each library. dashboard screenshot

Adding a meal

This is the current UI for adding a meal. meal add screenshot Ideally we would like it to look more like the mobile app UI so that volunteers can quickly add meals served on the go.

Before each meal, the volunteer selects the library and enter some information.

During the meal, the volunteer adds each meal as it is served by tapping the relevant button.

Running the web app locally

MAILURI = smtps://<emailAddress>:<password> (if you're using gmail, you will have to change some settings - you'll get an email about it the first time you try to run the app with your URI)

  1. You will need to either:
  • Add these variables with a MongoLabs URI and an email URI into a server/config/index.json file.
    • MLABURI = mongodb://\<dbUser\>:\<dbPassword\>@ds0\<port\>\<port\>/mealtally
    • MAILURI = smtps://\<emailAddress\>:\<password\>
      • If you're using Gmail, you will have to change some settings - you'll get an email about it the first time you try to run the app with your URI)
  • OR add those same variables as environmental variables.
  1. DocumentRoot\SJPL-MealTally\server>npm install

  2. DocumentRoot\SJPL-MealTally\server>node app

The app should connect to the database and be running at http://localhost:3000.