A desktop task management system built with Python and Tkinter to help organize tasks and boost productivity.
- User registration with validation (ID, email, mobile)
- Login system with password hashing (SHA-256)
- Profile management
- Admin & Regular user roles
- Create, edit, and delete tasks
- Set priority, status, and due dates
- Search, sort, and filter tasks
- Task validation (future dates only)
- View and manage all users
- View and delete any task
- Activate/deactivate user accounts
- User management dashboard
- Clone the repository
git clone https://github.com/samawael7/To-Do-Console-App-Python-Project.git
cd To-Do-Console-App-Python-Project- Run the application
python main.pyNo external dependencies needed - uses Python standard library only!
- Register - Create an account
- Activate - Admin activates your account or set
"status": "active"indata/users.json - Login - Sign in with email and password
- Manage Tasks - Create, edit, search, and organize your tasks
For Admin Access: Set "role": "admin" in data/users.json
To-Do-Console-App-Python-Project/
├── data/ # JSON data storage (users, tasks)
├── models/ # User & Task classes
├── services/ # Business logic (auth, tasks)
├── utils/ # Validation, storage, helpers
├── UI/ # Tkinter GUI screens
└── main.py # Application entry point
- Python 3.8+ - Programming language
- Tkinter - GUI framework
- JSON - Data storage
- hashlib - Password hashing (SHA-256)
- SHA-256 password hashing
- Input validation for all fields
- Role-based access control
- Account activation system
Pull requests are welcome! For major changes, please open an issue first.
MIT License
Sama Wael
GitHub: @samawael7
⭐ Star this repo if you found it helpful!