A modern GUI application for managing university courses. Built with Python and Tkinter, this application provides an intuitive interface for handling course-related operations.
- 📚 List all courses with detailed information
- ➕ Add new courses with validation
- ❌ Remove existing courses
- 🔄 Update course information (AKTS and Course Code)
- 🔍 Filter courses by department
- 📊 Table view with sortable columns
- 🔄 Auto-refresh functionality
- 🎨 Modern UI with Arc theme
- ⚡ Real-time updates
- ❌ Error handling and input validation
Python 3.x
tkinter (usually comes with Python)
ttkthemes
pillow (PIL)- Clone the repository:
git clone https://github.com/efekurucay/basic-course-management-system-python.git
cd basic-course-management-system-python- Install required packages:
pip install ttkthemes pillow- Run the application:
python course_gui.py- The application has four main tabs:
- List Courses: View and filter all courses
- Add Course: Add a new course with details
- Remove Course: Remove an existing course
- Change Course: Modify AKTS or course code
python_course_manager/
├── course_gui.py # Main GUI application
├── course_manager.py # Course management logic
├── CourseInfo.csv # Course data storage
├── logo.png # Application logo
└── README.md # This file
The course information is stored in CSV format with the following structure:
- Course Department
- Course Code
- Course Title
- Course AKTS
Example:
CSE,101,Introduction to Computer Science,6
MAT,101,Calculus I,6- View all courses in a table format
- Filter courses by department
- Auto-refresh when data changes
- Sortable columns
- Input validation for all fields
- AKTS must be a positive number
- Prevents duplicate entries
- Clear form after successful addition
- Simple removal by department and course code
- Confirmation before deletion
- Error handling for non-existent courses
- Modify AKTS values
- Change course codes
- Input validation
- Automatic updates in the course list
The application includes comprehensive error handling for:
- Missing input fields
- Invalid AKTS values
- Non-existent courses
- Duplicate courses
- File operations
- Fork the repository
- Create your 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
This project is licensed under the MIT License - see the LICENSE file for details.
[Your Name]
- Website: efekurucay.com
- Built with Python and Tkinter
- Uses ttkthemes for modern UI
- Inspired by university course management systems