A console-based Asset Management System developed using Python that allows users to efficiently manage organizational assets. The application supports complete CRUD operations, data validation, searching, filtering, sorting, and statistical reporting while storing data persistently using CSV files.
This project was built to strengthen my understanding of Python fundamentals, including functions, dictionaries, lists, file handling, exception handling, and modular programming.
Asset Management
- Add a new asset
- View all assets
- Search assets by:
- Asset ID
- Asset Name
- Filter assets by:
- Category
- Status
- Sort assets by:
- Asset Name
- Cost (Low to High / High to Low)
- Purchase Date (Oldest to Newest / Newest to Oldest)
- Update asset details
- Delete assets
Input Validation
- Unique Asset ID validation
- Asset Name validation
- Category selection from predefined options
- Purchase Date validation using datetime
- Cost validation (positive decimal values only)
- Status validation
- Assigned To validation (only when asset is assigned)
- Location validation
Statistics Dashboard
Displays:
- Total Assets
- Available Assets
- Assigned Assets
- Assets Under Repair
- Total Asset Value
- Asset Count by Category
Data Storage
- Stores data in a CSV file
- Automatically loads existing records when the application starts
- Python 3.13
- CSV Module
- Datetime Module
- Functions
- Lists
- Dictionaries
- Loops
- Conditional Statements
- Exception Handling (try / except)
- CSV File Handling
- Date Validation
- Input Validation
- Lambda Functions
- Sorting
- Searching
- Filtering
- Aggregation using Dictionaries
- Modular Programming
- Clone the repository.
git clone https://github.com/Kainatsiddiqui/asset-management-system-python.git
- Navigate to the project folder.
cd asset-management-system-python
- Run the application.
python asset_management.py
- SQLite database integration
- User authentication
- Logging functionality
- Export reports (CSV/PDF)
- Graphical User Interface (Tkinter)
- Object-Oriented Programming (OOP) implementation
This project helped me gain hands-on experience with Python programming by implementing real-world concepts such as data validation, file handling, modular design, searching, filtering, sorting, and statistical reporting. It also strengthened my understanding of writing clean, reusable, and maintainable code.
THANK YOU!








