GitHunt
IS

IsaacCheng9/student-planner

A desktop application developed in Python with PyQt5 to help students organise their work in a student planner consisting of an agenda and a timetable.

student-planner

Code style: black

A desktop application developed in Python with PyQt5 to help students organise
their work in a student planner consisting of an agenda and a timetable.

Installation

These instructions will help you to get the software for this student planner
running on your computer.

Python Version

Python 3.7.0 or later is required for this software to run. It can be installed
from Python's website here.

Python Libraries

The following Python library must be installed, as it is not built into the
Python installation by default:

  • pyqt5 [for user interfaces]
pip install pyqt5

Usage

You can run the student planner by running student_planner.py, which will
provide you with a main menu for the application.

The main menu helps you to navigate across the parts of the student planner,
which includes My Subjects, Agenda, and Timetable.

My Subjects

This enables you to enter the subjects which you are studying. These will appear
in the dropdown menus in other parts of the application to select the relevant
subject.

Agenda

In the agenda, you can enter tasks which you must complete in the future. This
includes the task title, subject, and due date for the task.

Timetable

The timetable helps you to organise your weekly schedule by editing a 5x5 grid,
which represents five hourly slots across the weekdays. In this grid, each cell
can be edited to add a subject, teacher, and room for that hour.

Tools Used

Qt Creator was used to design the user interfaces
for this project in a what you see is what you get (WYSIWYG) editor.

PyQt5's
pyuic5
was used to generate the base Python code from the user interface designs,
effectively converting the .ui files to .py files. These generated code
files were marked with the _setup.py suffixes, and they were imported into the
other Python files so that functionality could be developed for the user
interface objects.

Languages

Python100.0%

Contributors

Created January 15, 2021
Updated August 16, 2023