Skip to main content

An application that makes Liberty University GAs' lives easier.

Project description

LUGACH

PyPI PyPI - Python Version

LU GA Canvas Helps (LUGACH) is a cross-platform Python CLI tool designed to automate and streamline daily administrative tasks for Graduate Assistants (GAs) at Liberty University. LUGACH integrates with Canvas, Top Hat, and Lighthouse, providing a unified interface for managing student data, assignments, attendance, and more.

PyPI: https://pypi.org/project/lugach/

Features

  • Synchronize and cross-reference data between Canvas, Top Hat, and Lighthouse
  • Confirm student enrollment and retrieve student emails
  • Modify due dates and time limits on quizzes and assignments
  • Take and update attendance records
  • Identify absent students and quiz concerns
  • Post final grades and search for students by name
  • Securely manage authentication credentials for all platforms
  • Routine update and feedback mechanisms for error reporting

Requirements

  • Python 3.12.0 or later
  • pipx (recommended for users)
  • uv (recommended for developers)
  • Git (recommended for contributors)

Installation

For Users

Install and run LUGACH globally using pipx:

pipx install lugach

After installation, run the CLI from anywhere:

lugach --help

For Developers/Contributors

Clone the repository and install in editable mode with uv:

git clone https://github.com/dnicholson314/LU-GA-Canvas-Helps.git
cd LU-GA-Canvas-Helps
uv pip install -e .

Usage

Run this command for the interactive CLI:

lugach app -i

For information about the commands that retrieve Canvas data about courses or students, use

lugach cv --help

For information about the commands that retrieve Top Hat data about courses or students, use

lugach th --help

First-time setup:

When you first run LUGACH in interactive mode, you will see a menu like this:

    Welcome to LUGACH! Please choose one of the following options
    (or 'q' to quit):
        (1) Setup **this option here**
        (2) Identify Absent Students
        (3) Identify Quiz Concerns
        (4) Modify Due Dates
        (5) Modify Time Limits
        (6) Post Final Grades
        (7) Search Student By Name
        (8) Update Attendance Verification
        (9) Modify Attendance

Select Setup to add your authentication details for Canvas, Top Hat, and Lighthouse. These credentials are required for the other features to function and are stored securely using the system keyring.

Note that WSL lacks a built-in keyring, so credentials are instead stored in a dotfile in the user's home directory. This is inherently insecure, so proceed with caution.

Contributing

Contributions are welcome! If you have suggestions or bug reports, feel free to open an issue or submit a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lugach-0.2.1.tar.gz (25.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lugach-0.2.1-py3-none-any.whl (42.9 kB view details)

Uploaded Python 3

File details

Details for the file lugach-0.2.1.tar.gz.

File metadata

  • Download URL: lugach-0.2.1.tar.gz
  • Upload date:
  • Size: 25.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for lugach-0.2.1.tar.gz
Algorithm Hash digest
SHA256 8deaa54769b131366a2f05454aa7f42af4ce2dd5b8b94c5f138725ce0b9bd86d
MD5 3afef0f8d33fb291432544c163cb0a22
BLAKE2b-256 be53a46e204bbbe171b8daef733cf9b736b30fcef5966e042fc503a4ec2f15c1

See more details on using hashes here.

File details

Details for the file lugach-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: lugach-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 42.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for lugach-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 182717e08e3461ccd433739af61310c7266f6208600806f4199de96d2563a667
MD5 8e1069fc31bb7ab95d77f034ea76328d
BLAKE2b-256 eb12547e760c4655054875f420dcd5742ac9e7019d246cd77270b97ff54bc304

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page