A professional-grade Blood Bank Management System designed to streamline blood bank operations. This application allows blood banks to efficiently manage donor information, track blood inventory, and visualize stock levels in real-time using interactive charts.
Key Technologies:
- Backend: Python 3.8+
- GUI Framework: Tkinter
- Data Visualization: Matplotlib
- Database: File-based storage system
- ✅ Add New Blood Donors - Register donors with comprehensive details (Name, Age, Blood Group, Contact Info)
- ✅ Real-time Blood Stock Visualization - Interactive bar charts showing available blood inventory by group
- ✅ Donor Management - View, update, and manage complete donor records in a live-updating table
- ✅ Quick Donor View - Modal popup window for viewing detailed donor information
- ✅ Input Validation - Comprehensive validation and confirmation messages for data integrity
- ✅ User-Friendly Interface - Intuitive and responsive GUI design for easy navigation
- 📊 Real-time data visualization with Matplotlib
- 🔒 Input validation and error handling
- 💾 Persistent data storage
- 🎨 Professional UI with Tkinter
- ⚡ Fast and efficient data operations
- Python 3.8 or higher
- pip (Python package manager)
-
Clone the Repository
git clone https://github.com/Rohitkr2002/Blood-Bank-Management-System.git cd Blood-Bank-Management-System -
Install Required Dependencies
pip install -r requirements.txt
-
Run the Application
python BloodBank.py
Blood-Bank-Management-System/
├── BloodBank.py # Main application file
├── requirements.txt # Project dependencies
├── README.md # Documentation
└── project-Output.png # Application screenshot
- Click on "Add New Donor" button
- Fill in the donor details:
- Name
- Age
- Blood Group (A+, A-, B+, B-, O+, O-, AB+, AB-)
- Contact Information
- Click Confirm to save the donor
- Success message will appear upon successful entry
- All registered donors are displayed in the Donor Information Table
- Click on any donor row to view detailed information
- Table updates in real-time after each new entry
- Real-time Bar Chart displays current blood inventory by type
- Visual representation helps identify low stock blood groups
- Chart updates automatically as blood stock changes
- Tkinter - Cross-platform GUI development
- Matplotlib - Data visualization and charting
- Python Standard Libraries - File handling and data management
The application follows a modular design with:
- GUI Components - Organized Tkinter widgets for user interface
- Data Management - Structured storage and retrieval system
- Visualization - Matplotlib integration for real-time charts
- Database integration (MySQL/PostgreSQL)
- Advanced analytics and reporting
- User authentication system
- Blood donation scheduling
- Export/Import data functionality
- Mobile app integration
- Email/SMS notifications
- Donor history and blood donation tracking
| Requirement | Specification |
|---|---|
| Python | 3.8 or higher |
| RAM | Minimum 2GB |
| Disk Space | Minimum 100MB |
| OS | Windows, macOS, Linux |
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow PEP 8 style guide
- Add comments for complex logic
- Write descriptive commit messages
- Test your changes before submitting PR
Rohit Kumar
- GitHub: @Rohitkr2002
- Portfolio: [Your Portfolio Link]
- LinkedIn: [Your LinkedIn Profile]
- Thanks to the Python and Tkinter communities
- Matplotlib for excellent visualization tools
- Blood bank professionals for domain knowledge
If you encounter any issues or have suggestions:
- Check existing Issues
- Create a new issue with detailed description
- Contact via email
- v1.0 ✅ Basic blood bank management functionality
- v1.1 🔄 Enhanced UI/UX improvements
- v2.0 🚀 Database integration
- v3.0 📱 Mobile app version
Made with ❤️ by Rohit Kumar Singh
