Skip to content

justinlxiang/Vending-Machine-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cornell Vending - Cornell's Vending Machine App

A convenient and easy-to-use app that locates vending machines around campus and helps you track and purchase items from wherever you are! See demo video here: https://youtu.be/qBJ6MSUoK4s

Backend by: Joshua Dirga, Justin Xiang Front end by: Weijie Zhou, Tianyi Zhang

On the home page, you'll find a list of all of Cornell's vending machines with their location and whether they take Big Red Bucks and cash.

After clicking into a specific vending machine, you'll find a list of items for sale with their price and quantity remaining so you can buy them before they run out!

On the app, you can also navigate to your user profile to view your current balance and transaction history, and add funds if needed!

Our frontend contains multiple screens to navigate between with 3 scrollable pages and networking integration with our backend API to make changes to the data. We have 15 routes on our backend for creating, updating, and deleting machines, items, and users and making transactions with 4 SQLite tables with a one-to-many relationship between machines and items, machines and transactions, and users and transactions, and a one-to-one relationship between transactions and items.

Requirements and completion:

  1. Show vending machine locations: Display vending machines named by their location on the vending machine page.
  2. Show payment option: Display each vending machine's available payment options on the vending machine page.
  3. Allow students to purchase items in advance: Added a balance system, and a buy functionality for users.

Extension: In the future, the "buy" functionality in the app can be connected to the vending machines to create a reservation system that allows users to buy items and reserve them for pick up on their selected vending machine. Ideally, a timeout system and a limit on the number of items able to be purchased should be implemented. The "Add funds" functionality could also be connected with third-party modules like Google Pay, Apple Pay, or Paypal. In addition, connecting with Cornell's BRB system will also be a possible update. Lastly, the concept of producer-side users can be added to allow vending machine owners to track their vending machines' stock, or notifying them to restock their machines.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •