All Projects → GideonWolfe → canvas-tui

GideonWolfe / canvas-tui

Licence: other
🏫 🔅 A terminal interface for Canvas LMS

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to canvas-tui

AbsTK
The Abstract Toolkit – a widget toolkit for GUI and text-mode applications.
Stars: ✭ 67 (+131.03%)
Mutual labels:  tui
training-center.github.io
Site do Centro de Treinamento
Stars: ✭ 104 (+258.62%)
Mutual labels:  education
libgen-downloader
A simple tool to search and download ebooks from libgen via terminal user interface.
Stars: ✭ 98 (+237.93%)
Mutual labels:  tui
FromObjectsToFunctions
An attempt to provide a concrete, working example to demonstrate to C# developers how F# can improve their workflow and performance
Stars: ✭ 22 (-24.14%)
Mutual labels:  education
MCHE485---Mechanical-Vibrations
Code supporting MCHE485: Mechanical Vibrations at the Univsersity of Louisiana at Lafayette
Stars: ✭ 30 (+3.45%)
Mutual labels:  education
job4j
educational project 🎓
Stars: ✭ 21 (-27.59%)
Mutual labels:  education
fast-ssh
⌨️ FastSSH is a TUI that allows you to quickly connect to your services by navigating through your SSH config.
Stars: ✭ 77 (+165.52%)
Mutual labels:  tui
b5
A visual programming language for learning, prototyping, and fun. Inspired by p5.js.
Stars: ✭ 48 (+65.52%)
Mutual labels:  education
aletheia-admin
Project documentation including our README, contributing guidelines and more.
Stars: ✭ 32 (+10.34%)
Mutual labels:  education
school-navigator
Navigate the Durham, NC public school system
Stars: ✭ 25 (-13.79%)
Mutual labels:  education
wiki-tui
A simple and easy to use Wikipedia Text User Interface
Stars: ✭ 74 (+155.17%)
Mutual labels:  tui
platform
Decentralized Education 4.0 platform
Stars: ✭ 22 (-24.14%)
Mutual labels:  education
awesome-course
Create awesome courses that let your audience learn by coding ⌨️
Stars: ✭ 224 (+672.41%)
Mutual labels:  education
termshark
A terminal UI for tshark, inspired by Wireshark
Stars: ✭ 7,368 (+25306.9%)
Mutual labels:  tui
exam
Electronic exam software for higher education
Stars: ✭ 13 (-55.17%)
Mutual labels:  education
cs
command line codespelunker or code search
Stars: ✭ 34 (+17.24%)
Mutual labels:  tui
frontend
Ilios Frontend
Stars: ✭ 26 (-10.34%)
Mutual labels:  education
ncgrep
NCGREP, which is based on ncurses library to provide user interface, is a grep tool for searching text on target directory.
Stars: ✭ 23 (-20.69%)
Mutual labels:  tui
sfm
simple file manager
Stars: ✭ 163 (+462.07%)
Mutual labels:  tui
rovercode-web
Block-based programming for educational robots
Stars: ✭ 13 (-55.17%)
Mutual labels:  education

canvas-tui

canvas-tui is a terminal interface that allows you to view statistics scraped from the Canvas API.

Some details obscured for privacy

The goal of this project is to not only allow easy viewing of upcoming assignments and due dates, but to provide new metrics and data visualizations that are not included in the default canvas interface.

grades

Usage

The top bar is called the tab bar, and there should be one tab per enrolled course, plus a dashboard. You can use the h and l keys to navigate left and right respectively, and Enter to make a selection.

On a course page, you can use j and k to scroll down and up the list of pages provided by the canvas course. press Space to select a page. Currently only a few generic page types are supported for native viewing. To open any page in the browser, simply press o while viewing that page.

Configuration

TO generate a new canvas token, head to your Canvas Settings -> Approved Integrations -> Generate New Token.

Name it whatever you want, but save the generated token. The config.yaml file should be in $HOME/.config/canvas-tui, with the following contents:

canvasdomain: "https://your.schools.canvas.com"
canvastoken: "token from earlier"

Yes, it is quite slow to start up for a TUI application. This is because the vast majority of API calls and data processing are happening at startup, so it is limited to the speed of the API. However once loaded, it should be quite snappy.

Installation

Run the following commands to install the dependencies:

  • GO111MODULE=on go get github.com/spf13/viper
  • go get github.com/gizak/termui
  • go get github.com/gizak/termui/widgets
  • go get github.com/grokify/html-strip-tags-go

TODO list

  • Fix score line chart (waiting on PR in termui)
  • Scrollable widgets (syllabus, grades, etc, waiting on PR in termui)
  • Fix old classes (mostly labs) sticking around in courses
  • Fix grade table formatting bug
  • Open pages in browser
  • Add labels to grade plot (waiting on PR in termui)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].