UMC Campus CRUD
– projects

Last Friday, I completed my Programming 3 (PRO633) project: a tool for managing a database of UMC students and their grades. The GitHub project is here.
This application has two versions: one with a command-line interface and the other with a graphical interface. The whole package is written in Python 3, using the PyMySQL library to handle the database and PyQt5 for the GUI. Besides those three, the program requires access to a MySQL Server instance, preferably in the same machine.
The command-line program, which is the focus of the assignment, consists of two “modules”: a student module, which only allows users to look up their personal information and grades, and an administrator module, which allows them to look up personal information and to read, create, modify and delete records of one or many users (CRUD). I started to create this program on March 14th and worked on it all day, every day until I completed it on March 23rd.
After finishing the command-line program, I took a week off to do other stuff and generally relax a little. On March 30th, I drew some mockups, created a new Git branch and started working on the GUI version of the program. Again, I worked all day, every day until I completed everything on April 3rd.
The GUI application is in the gui
subpackage, and uses functions from the original package as its backend. Like the command-line version, the graphical version provides a student module and an administrator module, each with their own main window that allows the user to do the same tasks mentioned previously. Of course, the graphical interface makes the program much easier to use and more visually appealing.
The installation and use instructions are in the project’s README.md, plus some screenshots of the main screens. Everything is in Spanish since this is a university assignment, so I’ll provide a summary of the instructions in English here.
To install the program, just clone the repository:
git clone https://github.com/S8A/umc-pro633-crud.git
cd umc-pro633-crud
Next, you need a database with the required structure. To create the database in a local MySQL server, execute the following command to import the database structure with initial data (including example users):
mysql -u user -p database < db/umc_db.sql
To use the command-line version of the program, run the main package from the folder where you cloned the repository:
python3 -m umc_crud
To use the GUI version, run the gui
subpackage instead:
python3 -m umc_crud.gui