Developed as our engineering first project, the Product Sorting System was our introduction to data management and command-line application workflows in Python. The goal was to replicate an Amazon-like product search refinement mechanism, allowing users to filter and sort catalogs dynamically.
This project gave us incredible hands-on experience in presenting our work to faculty, learning how to structure technical explanations, demonstrating running CLI loops, and resolving questions regarding sorting algorithms and computational complexities.
- Persistent Data Storage: Product details (price, rating, and category) are kept in a local
products.jsonfile. - Pandas-Backed Engine: Converts JSON data into a Pandas DataFrame for highly efficient sorting and filtering operations.
- Dual-Criteria Sorting: Supports sorting items by price (ascending/descending) or average customer rating (descending).
- Price Gating: Filters products within a user-defined price range.
- Category Filter: Narrows the product catalog down to specific categories (e.g., Electronics, Home, Kitchen).
- Session Management: Users can chain multiple sorting and filtering actions together, or reset the DataFrame back to its original state.
- Programming Language: Python 3.x
- Data Manipulation: Pandas
- Data Storage: JSON
- Python 3.x installed.
- The
pandaslibrary. Install it using:pip install pandas
- Clone this repository locally:
git clone https://github.com/Ganesh2006646/product-sorting-system.git cd "product-sorting-system/Product Sorting Project"
- Run the application:
python main.py
This project laid the foundation for our engineering path, demonstrating how raw data files can be turned into structured, queryable data frames in python. Beyond the code, presenting the system to our faculty helped us build confidence in defending our technical decisions, explaining algorithm choices, and demonstrating clean terminal applications.