0% found this document useful (0 votes)
24 views14 pages

CS Project Report Template

This project report details the development of 'THICCBASKET', a Python-based application for online grocery shopping. It includes acknowledgments, hardware and software requirements, coding examples, and a bibliography of resources used. The project was completed by Devmalya Saraswati under the supervision of Mr. Mitul Bhatt at Podar International School, Ahmedabad.

Uploaded by

realbelugaduh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views14 pages

CS Project Report Template

This project report details the development of 'THICCBASKET', a Python-based application for online grocery shopping. It includes acknowledgments, hardware and software requirements, coding examples, and a bibliography of resources used. The project was completed by Devmalya Saraswati under the supervision of Mr. Mitul Bhatt at Podar International School, Ahmedabad.

Uploaded by

realbelugaduh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

PODAR INTERNATIONAL SCHOOL

AHMEDABAD

A PROJECT REPORT ON
THICCBASKET

SUBMITTED TO SUBMITTED BY:

MR. MITUL BHATT DEVMALYA SARASWATI


PGT - COMPUTER XI-B1
9
CERTIFICATE

This is to certify that Devmalya Saraswati of class:


XI B1 of PODAR INTERNATIONAL SCHOOL has
done his project on THICCBASKET under my
supervision. He has taken interest and has shown at
most sincerity in completion of this project.

I certify this Project up to my expectation & as per


guidelines issued by CBSE.

Examiner

Principal
ACKNOWLEDGMENT

It is with pleasure that I acknowledge my sincere


gratitude to our teacher, _______________ who taught
and undertook the responsibility of teaching the
subject computer science. I have been greatly
benefited from his classes.
I am especially indebted to our Principal
_______________ who has always been a source of
encouragement and support and without whose
inspiration this project would not have been a
successful I would like to place on record heartfelt
thanks to him.
Finally, I would like to express my sincere
appreciation for all the other students for my batch
their friendship & the fine times that we all shared
together.
HARDWARE AND SOFTWARE REQUIRED
Operating System: Modern versions of Windows, macOS, or Linux.

Python: Python 3.8 or newer

PyQt5: Version 5.15 or newer

RAM: Minimum 4GB, recommended 8GB

Processor: Dual-core or better

Graphics: Modern Gpu which can support a standard desktop environment

HARDWARE
RAM: 32GB

Processor: AMD 5 5600x 6 core processor

Graphics: NVIDIA RTX 3060 12 GB

SOFTWARE
Operating System : Windows 10 Pro

Python: Python 3.10

PyQt5: Version 6.8

integrated development environment (IDE): Spyder


CODING
import pyfiglet

class Product:

def __init__(self, name, price, discounted_price):

self.name = name

self.price = price

self.discounted_price = discounted_price

def show_title_page():

print("=" * 50)

title = pyfiglet.figlet_format("THICCBASKET")

slogan = pyfiglet.figlet_format("We deliver in 9m", font="slant")

print(title)

print(slogan)

print("=" * 50)

def display_categories():

print("\n" + "=" * 50)

print(pyfiglet.figlet_format("Categories", font="digital"))

categories = ["1. Dairy", "2. Bakery", "3. Vegetables", "4. Fruits", "5. Snacks", "6. Beverages",
"7. Personal Care"]

for category in categories:

print(f" {category}")

print("=" * 50)
def display_products(category_name, products):

print("\n" + "=" * 50)

print(pyfiglet.figlet_format(category_name, font="bubble"))

for idx, product in enumerate(products, 1):

print(f"{idx}. {product.name} - Original Price: ₹{product.price}, Discounted Price: ₹


{product.discounted_price}")

print("=" * 50)

def display_cart(cart):

print("\n" + "=" * 50)

print(pyfiglet.figlet_format("Your Cart", font="bubble"))

print("=" * 50)

if not cart:

print(pyfiglet.figlet_format("Cart is Empty", font="digital"))

else:

for idx, (product, quantity) in enumerate(cart, 1):

print(f"{idx}. {product.name} - ₹{product.discounted_price} x {quantity} = ₹


{product.discounted_price * quantity}")

print("=" * 50)

def display_checkout_summary(cart, delivery_charge, gst_rate=0.18):

print("\n" + "=" * 50)

print(pyfiglet.figlet_format("Checkout", font="block"))

print("=" * 50)

subtotal = sum(product.discounted_price * quantity for product, quantity in cart)


gst = round(subtotal * gst_rate, 2)

total = subtotal + gst + delivery_charge

print(f"Subtotal: ₹{subtotal}")

print(f"GST (18%): ₹{gst}")

print(f"Delivery Charges: ₹{delivery_charge}")

print(pyfiglet.figlet_format(f"Grand Total: ₹{total}", font="digital"))

print("=" * 50)

def main():

show_title_page()

categories = {

"Dairy": [

Product("Milk", 50, 45),

Product("Cheese", 100, 90),

Product("Butter", 150, 140),

],

"Bakery": [

Product("Bread", 40, 35),

Product("Cake", 500, 450),

Product("Pastry", 60, 55),

],

"Vegetables": [

Product("Potato", 30, 25),


Product("Tomato", 40, 35),

Product("Onion", 50, 45),

],

"Fruits": [

Product("Apple", 150, 140),

Product("Banana", 60, 50),

Product("Orange", 80, 70),

],

"Snacks": [

Product("Chips", 20, 18),

Product("Biscuits", 30, 25),

Product("Popcorn", 50, 45),

],

"Beverages": [

Product("Tea", 100, 90),

Product("Coffee", 150, 140),

Product("Juice", 120, 110),

],

"Personal Care": [

Product("Soap", 40, 35),

Product("Shampoo", 200, 180),

Product("Toothpaste", 80, 70),

],

}
cart = []

while True:

display_categories()

category_choice = input("Choose a category by number (or 'q' to quit): ")

if category_choice.lower() == 'q':

break

try:

category_name = list(categories.keys())[int(category_choice) - 1]

except (ValueError, IndexError):

print("Invalid category choice. Please try again.")

continue

products = categories[category_name]

display_products(category_name, products)

while True:

product_choice = input("Choose a product by number (or 'b' to go back): ")

if product_choice.lower() == 'b':

break

try:

product = products[int(product_choice) - 1]

quantity = int(input(f"Enter quantity for {product.name}: "))


cart.append((product, quantity))

except (ValueError, IndexError):

print("Invalid product choice or quantity. Please try again.")

while True:

display_cart(cart)

action = input("Type 'checkout' to proceed to checkout, or 'remove' to remove items: ")

if action.lower() == 'checkout':

break

elif action.lower() == 'remove':

try:

item_idx = int(input("Enter the item number to remove: ")) - 1

if 0 <= item_idx < len(cart):

cart.pop(item_idx)

else:

print("Invalid item number.")

except ValueError:

print("Invalid input. Please try again.")

print("\nChoose delivery speed:")

print("1. Within half an hour (₹50)")

print("2. Same day (₹30)")

print("3. 1-2 days (₹10)")

try:
delivery_choice = int(input("Enter your choice: "))

delivery_charge = [50, 30, 10][delivery_choice - 1]

except (ValueError, IndexError):

print("Invalid choice. Defaulting to 1-2 days (₹10).")

delivery_charge = 10

display_checkout_summary(cart, delivery_charge)

if __name__ == "__main__":

main()
OUTPUT
BIBLIOGRAPHY
1. Mitul Bhatt
o Special thanks to Mitul Bhatt, an exceptional educator, for providing invaluable
guidance and support in learning Python and inspiring the creation of this project.

2. Pyfiglet Documentation
o Pyfiglet library for creating ASCII art titles and slogans.
o Source: Pyfiglet on PyPI

3. Python Official Documentation


o Comprehensive documentation for Python programming language.
o Source: Python.org

4. Real Python
o Tutorials and articles on advanced and beginner-friendly Python concepts.
o Source: Real Python

5. GeeksforGeeks
o Educational resources and examples for Python programming concepts.
o Source: GeeksforGeeks

6. Stack Overflow
o For troubleshooting issues and finding answers to specific Python programming
challenges.
o Source: Stack Overflow

7. W3Schools
o Step-by-step Python tutorials and syntax explanations.
o Source: W3Schools Python Tutorial

You might also like