Skip to content

An open source food bank logistics and inventory management tool

License

Notifications You must be signed in to change notification settings

yaseenshaik/pantry-for-good

 
 

Repository files navigation

This repository is for the Pantry-for-Good application designed by Open Source for Good Contributors at freeCodeCamp. If you'd like to contribute the contributing guide explains the git workflow and the developers guide gives an overview of how the app works.

The open issues are a good place to start, or you can try the app and add your own issues. If you get stuck or need help with something feel free to leave a comment.

Some issues are quite large, don't feel like you have to finish them. Little bits help too!

There's a demo app hosted at https://pantry-for-good.herokuapp.com, though it might be a bit behind the current version.

Installation

The app is designed to be installed locally (mac, linux or windows) or on Heroku.

You can deploy it to Heroku by clicking the button. An admin account with email admin@example.com and password password will be created.

Deploy


Local installation summary:

  1. Install Node.js and MongoDB
  2. Start MongoDB
  3. git clone https://github.com/freeCodeCamp/Pantry-for-Good.git
  4. cd Pantry-for-Good
  5. Make sure you're on the 'staging' branch (git branch), otherwise run git checkout staging
  6. npm install
  7. npm run dev
  8. Open http://localhost:8080 in your web browser
  9. Login with username admin@example.com password password

Detailed local development installation steps

You'll need to have a Node.js version >= 6 installed. Either use your OS's package manager or follow the installation instructions on the official website.

This app uses MongoDB as its database engine. Follow these instructions to install it locally and start the MongoDB server on your machine.

Install git if it is not already installed. To clone this repository to your local machine, open a command line interface and navigate to the directory where you would like to install the app. Then run git clone https://github.com/freeCodeCamp/Pantry-for-Good.git

Move to the Pantry-for-Good directory and run the npm install command to install the application dependencies.

Type npm run dev to start the application in development mode. If all goes well, it will be available at http://localhost:8080. The application is pre-populated with an administrator account with username admin@example.com and password password.


Installing API keys

To use all the features of this application you will need to obtain API keys and install them in the application. Make a copy of the server/config/env/secrets-template.js file in the same directory and rename it secrets.js. After following the instructions below to obtain API Keys, put your keys in this file.

Google Maps API key required for the deliveries feature

Google+ API for allowing users to register/login with google.

Sendgrid email API for sending emails.

  • Register for a trial account or deploy the app and get the username/password from the heroku config vars
  • Go to Settings > API Keys and create a key
  • Paste the key in secrets.js or the SENDGRID_API_KEY config var of your deployed app.

About

An open source food bank logistics and inventory management tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.8%
  • Other 1.2%