GithubHelp home page GithubHelp logo

doc22940 / pos_system Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bennington-hardware-hacking-2019/pos_system

0.0 0.0 0.0 19.62 MB

Automated Point of Sale System using NFC

License: MIT License

Makefile 1.12% Python 82.01% Shell 0.84% Batchfile 1.05% CSS 4.70% HTML 3.94% JavaScript 5.02% TSQL 1.32%

pos_system's Introduction

Automated Point of Sale System using NFC

Purpose

Our goal is to develop an automated point of sale system using near field communications for the Bennington College campus thrift store (TAPA). We hope that this POS system will help re-establish TAPA by easing the burden of managing inventory and potentially eliminating the expense of employing cashiers.

High-level architecture

  • NFC Reader (ISO Format): Read tags.
  • NFC Reader (HID Format): Read Bennington IDs.
  • Controller: Runs the Backend and User Interface.
  • Monitor: 7โ€ touch screen with stand and mount for Controller.
  • Database: Store user information, inventory items and transaction details.
  • Backend: Prepare transactions, validate transactions using Stripe/Venmo API, update Controller.
  • User Interface: A locally hosted web interface for buyers to view, manage, and checkout items in the Cart. Also an admin interface for managing inventory

For more details, please visit the design doc.

Sample Flow

Point of Sale

  • Alex taps thrift store items on the NFC reader to add items to the cart
  • They can remove items from their cart on the touch screen
  • Once they are done they tap their Bennington ID Card to checkout
  • The screen will notify that a payment link is sent to the student email
  • Now Alex is ready to make their purchase

Administration

  • Blake taps the Admin Login button on the touch screen and enters the pin
  • Blake can then manage the inventory on the touch screen

Installing

To install necessary development tools:

make init

Using

First,

make db-setup && make run

Second, access

http://127.0.0.1:5000

Developing

To setup postgres with pre-populated data. Used for initial setup and testing mostly.

make db-setup

To run test

make test

pos_system's People

Contributors

awbry avatar fivegrant avatar mattcollyer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.