Skip to content

Interfaces

kcouv edited this page Mar 11, 2023 · 11 revisions

INTERFACES

GUI (Graphical User Interface)

Purpose

Provide a GUI for the executable version of the Scripture Quotation Identification program which takes in Greek text or a text file containing Greek text and displays a list of verses potentially referenced by each clause Greek clause. Future iterations will allow multiple files to be processed at once, provide pagination for multiple file output, and allow the user to enable/disable various options to increase/decrease the level of confidence in each verse reference prediction.

Progress

Currently, the GUI can bring in and analyze a text file containing Greek text, outputting the results into the output window. However, it does not yet have the ability to analyze raw Greek text input pasted into the input box, nor does it support any features intended to be implemented in future iterations.

Dev Notes

The current version of the GUI makes use of the PySimpleGui library. This library is based on keyed components and simple event listeners. While it makes code drafting extremely quick and easy, it lacks in capabilities for more complex applications.

CLI (Command Line Interface)

Purpose

Provide a CLI for the Scripture Quotation Identification application which takes in Greek text or a text file containing Greek text and returns a list of potential verse references for each Greek clause. Future iterations will provide more options to allow the user to customize their analysis and increase/decrease the confidence level of the predicted verse references.

Progress

The CLI can take in raw Greek text, a text file containing Greek text, or multiple text files containing Greek text. It directs the outputted verse analysis to either stdout (display text on the terminal) or to a specified output text file. Currently cli.py holds all of the functions called by the WUI (see below), so these can be separated into a "processing" file of sorts in future iterations.

Usage

To analyze a string of raw Greek text:

SQI.exe -t "<Greek text>"

To analyze a file containing Greek text:

SQI.exe -f <filepath>

To analyze multiple files containing Greek text:

SQI.exe -b <filepath> <filepath> ...

Dev Notes

Most of the processing for this application is done through other files and functions. It is important that cli.py does as little processing as possible, and instead organizes all the other processing functions into one coherent "main" program of sorts.

WUI (Web User Interface)

Work in progress. Needs further server development.

Purpose

Progress

Usage

Dev Notes