Skip to content

Latest commit

 

History

History
151 lines (115 loc) · 3.9 KB

README.md

File metadata and controls

151 lines (115 loc) · 3.9 KB

TrackBasket is a grocery-delivery app for volunteer shoppers who serve people whose mobility is limited during the pandemic. The purpose of the app is to allow at-risk consumers to create shopping lists by searching items available at a nearby store and to make these lists available to volunteers who can sort them and select the one they can fulfill.

Table of Contents

About The Project

As the thread of COVID-19 rises, it's not safe for some people to leave their house, even to buy essentials. Trackbasket connects this at-risk population with volunteers who shop for and deliver customized grocery lists.

Built With

Back end:

  • Frameworks: Flask
  • Language: Python 3.7
  • Deployment: Heroku
  • Database: PostgreSQL
  • Testing: UnitTest, Coverage
  • Dependency Management: Poetry
  • Project Management: Github Project Board
  • External API: Kroger

Front end:

  • React Native
  • React Navigation
  • React Hooks/Context API
  • Expo
  • React Native Testing Library
  • Jest

Schema

Getting Started

To get a local copy up and running follow these simple steps.

Installation

  1. Clone the repo
git clone https://github.com/track-basket/trackbasket_BE
  1. Install Python

  2. Install Poetry

  3. Run the app locally

python trackbasket_be/app.py
  1. Your credentials should be stored locally

Testing

Run the test suite from the trackbasket_be directory:

python -m unittest discover

Back End Endpoints

Volunteer Endpoint

Retrieve a volunteer's profile information:

GET https://trackbasket.herokuapp.com/volunteer/<volunteer_id>

Create a new volunteer:

POST https://trackbasket.herokuapp.com/volunteer/<volunteer_id>

AtRiskUser Endpoints

Retrieve an at risk user's profile information:

GET https://trackbasket.herokuapp.com/atriskuser/<at_risk_user_id>

Create a new at risk user:

POST https://trackbasket.herokuapp.com/atriskuser/<at_risk_user_id>

Update an at risk user:

PATCH https://trackbasket.herokuapp.com/atriskuser/<at_risk_user_id>

Delete an at risk user:

DELETE https://trackbasket.herokuapp.com/atriskuser/<at_risk_user_id>

ShoppingList Endpoints

Retrieve a shopping list's information:

GET https://trackbasket.herokuapp.com/shoppinglist/<at_risk_user_id>

Create a new shopping list:

POST https://trackbasket.herokuapp.com/shoppinglist/<at_risk_user_id>

Update a shopping list:

PATCH https://trackbasket.herokuapp.com/shoppinglist/<at_risk_user_id>

Delete an at risk user:

DELETE https://trackbasket.herokuapp.com/shoppinglist/<at_risk_user_id>

List of ShoppingLists Endpoint

Retrieve all shopping lists' and its information:

GET https://trackbasket.herokuapp.com/listshoppinglists

Acknowledgements

Developer GitHub Profiles

  • Alexis Dumortier (Backend) - GitHub

  • Maria Ronauli (Backend) - GitHub

  • Ed Stoner (Frontend) - GitHub

  • Cody Smith (Frontend) - GitHub

Deployed Application on Heroku: TrackBasket