Skip to content

Nicola-Carroll/tech_for_good

Repository files navigation

Second Helpings

Overview

This is our third (and final) Makers Academy bootcamp group project. Our team was formed by a shared interest in building a "Tech for Good" web application. And so we've built Second Helpings, a website that connects businesses with left over food to charities looking for donations.

image

Team members

Technologies and tools used

  • MERN Stack (MongoDB, Express, React, Node)
  • DB Hosting: MongoDB Atlas
  • Testing: Jest unit testing on the backend, Cypress for integration testing
  • API Testing: Insomnia, Postman
  • APIs: Google API, Open Postcode Geo API
  • CSS: Bootstrap
  • Deployment: Heroku
  • Business tools: Miro, Trello, EasyRetro

Initial domain model

image

Setting up databases

  1. Create a .env file in the root directory

  2. Set up a MongoDB account and follow the guide to setting up a database

  3. In your root .env file write the following:

PORT = 5000
CONNECTION_URL = < MONGODB URL STRING HERE >
TEST_CONNECTION_URL = < MONGODB TEST URL STRING HERE >

Running the program locally

  1. Clone this repo
  2. In both the root directory and the client directory separately run
npm install
  1. Set up a Google Maps API key which allows access to the Google Maps JavaScript API
  2. In the client directory create .env containing
REACT_APP_ENDPOINT = < SERVER LOCAL HOST END POINT >
REACT_APP_MAP_API = < GOOGLE MAPS API KEY >

An example of the server's local host end point is http://localhost:5000/api/

Running the tests

When in the root directory, the command

npm test

will run Jest for the back-end unit tests. To run the integration tests with Cypress, the command is

cd client
npm test

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published