A terminal-based Python and MySQL project that helps users build compatible custom PCs by selecting components such as CPU, GPU, Motherboard, RAM, Storage, and PSU.
The project allows users to:
- Create custom PC builds
- View compatible hardware
- Store user builds in a database
- Manage records using admin access
- Calculate approximate total build cost
Note: Component prices and hardware data are based on 2024 market data.
- User Login & Signup System
- Continue as Guest
- Create Custom PC Builds
- Compatibility-based component selection
- Automatic PSU recommendation
- Total Price Calculation
- View Other Users' PC Builds
- Insert Records
- Update Records
- Display Records
- Search Records
- Delete Records
- Python
- MySQL
- mysql-connector-python
- Tabulate
Custom-PC-Build-System/
│
├── main.py
├── components.sql
├── README.md
├── Output(s).pdf
git clone https://github.com/KunalSambyal/Custom-PC-Build.gitpip install mysql-connector-python
pip install tabulateImport the provided SQL database file:
mysql -u root -p < components.sqlOR
- Open MySQL Workbench
- Open
components.sql - Run the SQL script
This will automatically:
- Create the
componentsdatabase - Create all required tables
- Insert sample hardware data
Open main.py and update your MySQL credentials:
con = sql.connect(
host="localhost",
username="root",
passwd="YOUR_PASSWORD",
database="components"
)Replace YOUR_PASSWORD with your MySQL password.
python main.pyThe project includes:
- User Authentication System
- Database CRUD Operations
- Hardware Compatibility Logic
- Dynamic Component Selection
- Admin Management System
Project execution screenshots and outputs are included in:
Output(s).pdf
- GUI version using Tkinter or PyQt
- Secure password hashing
- SQL injection prevention using parameterized queries
- Better exception handling
- Online deployment
- Expanded hardware database
Kunal Sambyal