TermSessionsDates is a Python-based application to calculate the schedule of sessions for a course. The application allows you to specify the number of sessions, the start date, and the days of the week when sessions should occur. You can also specify dates to exclude from the schedule.
- Calculate course schedule based on the number of sessions and start date
- Select specific days of the week for sessions
- Exclude specific dates from the schedule
- Display the resulting schedule in a readable format
- Save and load excluded dates from a JSON file
- Python 3.x
- tkcalendar==1.6.1
-
Clone the repository:
git clone https://github.com/mofasuhu/TermSessionsDates.git cd TermSessionsDates -
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install the required dependencies:
pip install -r requirements.txt
Run the application using the following command:
python TermSessionsDates.pyUse the executable file located in the TermSessionsDates folder. Double-click TermSessionsDates.exe to run the application.
TermSessionsDates/
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
├── myscreenshot.png
├── TermSessionsDates.py
└── TermSessionsDates/
├── TermSessionsDates.exe
└── _internal/
- .gitignore: Specifies files and directories to be ignored by git.
- LICENSE: Contains the license information for the project.
- README.md: This file, containing information about the project.
- requirements.txt: Contains the list of dependencies needed for the project.
- myscreenshot.png: Screenshot of the GUI.
- TermSessionsDates.py: The main Python script for the application.
- TermSessionsDates/: Contains the executable file and internal resources.
- Enter the number of sessions.
- Select the start date.
- Choose the days of the week when the sessions should occur.
- Optionally, add any dates to exclude from the schedule.
- Click "Submit" to generate the schedule.
Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.
This project is licensed under the MIT License - see the LICENSE file for details.
