Skip to content

ACM-VIT/cli-top

Repository files navigation

ACM Header

cli-top

A Command Line Interface (CLI) tool for seamless interaction with the student portal, VTOP.

Made by ACM License: GPL v3


Overview

cli-top gives VIT students quick terminal access to VTOP records, schedules, course resources, and campus services.

Features

  • Academic records: attendance, marks, grades, CGPA, exam schedules, and profile details
  • Planning: timetable, academic calendar, holidays, and attendance-aware plans for today, tomorrow, and the day after
  • Course tools: course allocation, current and archived course materials, syllabi, and digital-assignment status and question papers
  • Campus services: events, facilities, hostel details, leave, nightslips, library dues, and receipts
  • Communication: class messages and announcements
  • Local account management: encrypted credential storage and logout

See the command reference for every command, alias, and flag.

Tech Stack

  • GoLang : Core programming language
  • Cobra : Go library for creating the terminal CLI

Installation

To install cli-top, you can download the binary directly from cli-top.acmvit.in.

  1. Download the Binary:

    Visit cli-top.acmvit.in to download and configure the appropriate binary for your operating system.

  2. Run the Binary:

After downloading, navigate to the folder where the binary is saved and run it from your terminal:

./cli-top

Build from Source

To compile cli-top yourself:

CGO_ENABLED=0 go build -trimpath -ldflags "-s -w" -o cli-top .

Using -trimpath removes local file paths from the executable and, together with -ldflags "-s -w", helps reduce binary size.

Usage

Store your VTOP credentials locally. Missing values are prompted for interactively:

cli-top login [--username USERNAME] [--password PASSWORD]

login encrypts and stores the password; the first portal-backed command performs the VTOP authentication.

Run a feature command:

cli-top marks
cli-top attendance --semester 1
cli-top exams --semester 1
cli-top today
cli-top msg # alias: class-messages

List all public commands or inspect one command's flags:

cli-top --help
cli-top attendance --help

Testing

go test ./...
go test -race ./...

Cross-package workflow and executable tests live in tests/. Package-local _test.go files are reserved for white-box unit tests that exercise unexported implementation details.

Project Management

  • Use Git for version control and code management
  • Take up issues and request assignment before starting work
  • Push to the "dev" branch for testing and compatibility checks
  • Main and dev branch pushes require approval from designated maintainers

Authors

Maintainers

Contributors

License

Copyright (C) 2023-2026 ACM-VIT and cli-top contributors.

This project is licensed under the GNU General Public License version 3 only (GPL-3.0-only). See LICENSE for the full license text.

About

No description, website, or topics provided.

Resources

License

Stars

5 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Generated from ACM-VIT/old-template