Skip to content

A simple, interactive command-line tool written in Go that helps you track your grades while learning independently. It was born out of my own self-taught learning journey. Working through books, exercises, tests, and wanting an easy way to see how I’m really doing over time.

License

Notifications You must be signed in to change notification settings

Chance093/grader

Repository files navigation

grader

A lightweight CLI for tracking your self-taught learning progress.


📘 Overview

grader is a simple, interactive command-line tool written in Go that helps you track your grades while learning independently. It was born out of my own self-taught learning journey. Working through books, exercises, tests, and wanting an easy way to see how I’m really doing over time.

With grader, you can:

  • Create and manage classes (e.g. Algebra, Calculus, etc.)
  • Add homework, quizzes, and tests for each class
  • View and update your grades
  • Adjust grade weights (e.g. Tests – 50%, Homework – 30%, Quizzes – 20%)
  • See your overall grade for each class
  • Drill down to view grades for individual assignments

All of this happens in a clean, interactive CLI powered by the promptui package, allowing you to use arrow keys to navigate options and enter grades intuitively without having to memorize commands.


🚀 Installation

To install grader using Go:

go install github.com/Chance093/grader@latest

This will place the compiled binary in your $GOPATH/bin (or in ~/go/bin if you’re using default settings). Make sure it’s included in your system PATH.

Then simply run:

grader

and you’ll see the interactive menu.


💻 Running Locally

If you’d rather clone and run it locally (for development or inspection):

git clone https://github.com/Chance093/grader.git
cd grader
go run main.go

This will launch the same interactive CLI as the installed binary.


🧠 Why I Built It

While teaching myself math through textbooks and problem sets, I wanted a simple way to measure my performance, without spreadsheets or heavy apps. grader keeps things focused and minimal: no sign-ins, no forgotten spreadsheets, just a CLI to log your progress and see how you’re improving.


🛠️ Tech Stack

  • Language: Go (Golang)
  • Database: Sqlite
  • CLI Prompt Library: promptui

📄 Example Use

Launch the program:

grader

You’ll be greeted with a menu that lets you:

  • Create or view a class
  • Add assignments to that class
  • Edit or delete assignments
  • View your weighted average grade

It’s fully interactive, just use your arrow keys to navigate between options and enter your responses when prompted.


📬 Feedback

If you have ideas or run into any issues, please open a GitHub issue on the grader repository.


Keep learning and keep grading yourself!

About

A simple, interactive command-line tool written in Go that helps you track your grades while learning independently. It was born out of my own self-taught learning journey. Working through books, exercises, tests, and wanting an easy way to see how I’m really doing over time.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages