BubbleBrew is a web application that allows users to customize and order their favorite bubble tea. The application is built using React for the frontend and FastAPI for the backend, with PostgreSQL as the database.
- User Authentication: Users can sign up, log in, and log out using their email and password.
- Customize Bubble Tea: Users can select flavours, toppings, and size for their bubble tea.
- Cart Management: Users can add customized bubble tea to their cart.
- Order Processing: Users can view their orders and checkout.
- Frontend: React, React Router, Axios
- Backend: FastAPI
- Database: PostgreSQL
- Styling: Tailwind CSS
- Node.js
- Python 3.8+
- PostgreSQL
-
Clone the repository:
git clone https://github.com/sora-san45/bubblebrew.git cd bubblebrew/client
-
Install dependencies:
npm install
-
Run the development server:
npm start
-
Navigate to the backend directory:
cd bubblebrew/server
-
Create and activate a virtual environment:
python -m venv env source env/bin/activate # On Windows use `env\Scripts\activate`
-
Install dependencies:
pip install -r requirements.txt
-
Set up the PostgreSQL database and update the database URL in the
config.py
file. -
Run the FastAPI server:
uvicorn main:app --reload
- Sign Up: Users can create a new account.
- Log In: Users can log in with their email and password.
- Log Out: Users can log out of their account.
- Select Flavour: Choose from a variety of flavours.
- Choose Toppings: Add your favorite toppings.
- Select Size: Choose the size of your bubble tea.
- Add to Cart: Add the customized bubble tea to your cart.
- View Cart: See all the items in your cart.
- Delete Item: Delete items from your cart
- Proceed to Checkout: Complete your order.
- View Orders: See a list of your past orders.