QueueBall is a modern way of reserving your spot at a pool table in your favourite bar. As a single-page app built with Node.js, Express.js, React, and socket.io, users can scan a QR code, choose their desired table to play at, and then add themselves to the queue. The number of players at each table updates in real time, so you'll never lose track of your place in line. We like to think that this is an efficient alternative to hunting for pocket change just so you can line up for that next exciting match.
- Fork and clone the App from github: https://github.com/KianNaimiRoy/Queue_ball
- The project is a mono repo with two directories within it that separates the backend and frontend. Cd into the backend directory from the root directory and run
npm install
to install dependencies. Go back to the root directory of the project and cd into the frontend directory, and then also runnpm install
to install dependencies. - From the terminal--and with postgreSQL installed-- enter
psql
and create a database for this project (why not call itqueue_ball
?). - Create a .env file based on .env.example and fill out the values that correspond to the database you just created.
- To start the app, open two separate terminal windows for the backend and front end. Run
npm start
for both the backend and frontend to start. Go to http://localhost:3000 to view the app in your browser. - To reset the database, run
npm run db:reset
from the 'backend' directory. Be sure to clear the local storage in your browser so that you don't encounter any funny queueing behaviour. - Enjoy the app!
- Express
- Dotenv
- PostgreSQL
- Nodemon
- Morgan
- Cors
- Socket.io
- Axios
- Classnames
- Body-parser