Divvy Tips is a mobile-focused responsive web application that looks at alleviating the pain and time-consuming task of having to calculate the hours, credit card and cash tips, and bar back cut for bartenders that are “running” the money at the end of the night. It allows bartenders to log in, submit their hours, and submit their credit card tips for their respective drawer. This information is stored so, whoever is running the money, will be able to press a couple buttons and receive a detailed quick divvy table. This application can save up to three hours, depending on the bar size, at the end of a long bartending shift.
Before you get started, make sure you have the following software installed on your computer:
Create a new database called prime_app
and create a user
table:
CREATE TABLE "user" (
"id" SERIAL PRIMARY KEY,
"username" VARCHAR (80) UNIQUE NOT NULL,
"password" VARCHAR (1000) NOT NULL
);
If you would like to name your database something else, you will need to change prime_app
to the name of your new database name in server/modules/pool.js
- Run
npm install
- Create a
.env
file at the root of the project and paste this line into the file:While you're in your newSERVER_SESSION_SECRET=superDuperSecret
.env
file, take the time to replacesuperDuperSecret
with some long random string like25POUbVtx6RKVNWszd9ERB9Bb6
to keep your application secure. Here's a site that can help you: https://passwordsgenerator.net/. If you don't do this step, create a secret with less than eight characters, or leave it assuperDuperSecret
, you will get a warning. - Start postgres if not running already by using
brew services start postgresql
- Run
npm run server
- Run
npm run client
- Navigate to
localhost:3000
Once you're logged in, click add tips to add your tips and hours to the shift. At the end of the night, one individual will "Run the Money", and confirm all of the changes needed
This goes out to all of my prime cohort and my instructors, Matt and Andrew. Without all these people, I wouldn't have been able to execute a fifth of this project.