aandrewduong / veil-v2

Automation Tool for De Anza and Foothill College

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Veil-V2

Veil is an open-source program written in Golang designed to efficiently scrape, process, and manage class and college enrollment data at De Anza and Foothill College. In addition to offering a seamless way to search and export class data, it also supports class enrollment and class enrollment monitoring.

Table of Contents

Key Features

  1. Class Search & Export: Ability to search for classes and export the results in CSV format.
  2. Unofficial Transcript: Retrieve and export your previously enrolled courses in CSV format.
  3. Enrollment: Enroll in courses.
  4. Watch: Watch the enrollment data for classes, notifying you if there is a waitlist or enrollment spot available.

Prerequisites

  • Golang: You need a version >=1.21.4 of Go installed.

Configuration

For the tool to function correctly, "settings.csv" is required to be setup properly.

settings.csv Parameters

Parameter Description Example Values
Username Your FHDA Username 00000000
Password Your FHDA Password TestTestPassword123
Term Term 2024 Spring De Anza
Subject Subject (Used only for Class Search) MATH
Mode Type of Task Signup
CRNs Course Reference Numbers (Multiple Supported) 47520,44412,41846
Webhook Discord Webhook URL (For Notifications) https://discord.com/api/webhooks/[gone]

To create a Discord Webhook, See How to Create a Discord Webhook.

To edit settings.csv, a spreadsheet editor is recommended. See Rons Editor or Google Sheets.

Compilation

To compile this program, run build.sh for the program to be compiled.

Usage

To run this program, run

go run .

Modes

  • Signup: Enroll in classes with specified CRNs (Course Refence Numbers).
  • Search: Search for all the sections based on given term, section and subject.
  • Transcript: Export your "unofficial transcript", or data of previously enrolled courses.
  • Watch: Monitor enrollment data, sending a notification if a waitlist or enrollment spot is available.
image

About

Automation Tool for De Anza and Foothill College


Languages

Language:Go 99.8%Language:Shell 0.2%