Skip to main content

Tools for undergraduate students to manage classes.

Project description

List of built-in binaries:

1. `newsemester <semester-number>`
2. `newcourse "[<course-name>]"`
3. `removecourse`
4. `newnotes`
5. `classcompile`
6. `coursecomplete`
7. `semestercomplete`
8. `printgrades`

The first time you run a command after coursemanager installation, you will be prompted to setup your college directory (where all notes, course directories, and grade files will be stored).

  1. newsemester <semester-number>

  • Creates the directory ‘Semester ‘ within your college directory.

  • Prompts for courses being taken in the new semester. Creates a course directory for each course with a ‘Notes’ subdirectory in each course directory.

  1. newcourse "[<course-name>]"

  • Creates a new course with name []. Defaults to the latest semester (highest semester number).

  • To change the default semester directory, run the following code in python: from course_manager import config_path print config_path

Navigate to the JSON file printed out and change the defalt_directory variable to match what you want the current semester to be.

  1. removecourse

  • Removes a given course without recording a grade. Gives the option to completely remove the course directory or to archive it to a ZIP file.

  • Options for courses to remove are based on the default semester (see (2.) for more).

  1. newnotes

  • Adds new notes to a given course. If cwd is within a given course directory, the notes will be created for that course. Otherwise, options for courses are based on the default semester (see (2.) for more).

  • By default, newnotes will create a new .tex file named the current date. The .tex file will contain the necessary components to be recognized as a `subfile <https://www.sharelatex.com/learn/Multi-file_LaTeX_projects>`__ of the main.tex file that is initially created within the course directory.

  • A line linking to the new notes file is added to the main.tex file.

  1. classcompile [config]

  • Compiles the main.tex file for a given course. If cwd is within a given course directory, the notes will be created for that course. Otherwise, options for courses are based on the default semester (see (2.) for more).

  • If config is used within the command, all LaTeX extra files (main.log, main.toc, main.out, and main.aux are NOT deleted after compilation.)

  • This command compiles the LaTeX twice (LaTeX compilation is a two-pass process, originally to preserve memory. Running only once will not always catch figure and citation references).

  1. coursecomplete

  • Archives a given course. Options for courses to remove are based on the default semester (see (2.) for more).

  • Prompts for the grade in that course and how many credits the course was worth. Updates the grades.tsv file with the new grade.

  • Currently, GPA calculations are based on Brown University grading standards. These settings can be edited in the config.json file (instructions on how to edit this file are under (2.).

  1. semestercomplete

  • Archives the default semester (see (2.) for more about the default semester). Gives the option to keep or remove the default semester directory in addition to archiving it.

  • Runs coursecomplete on all courses for which grades have not yet been inputted.

  • Updates grades.tsv.

  1. printgrades

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

coursebin-1.0.4.tar.gz (12.9 kB view details)

Uploaded Source

File details

Details for the file coursebin-1.0.4.tar.gz.

File metadata

  • Download URL: coursebin-1.0.4.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for coursebin-1.0.4.tar.gz
Algorithm Hash digest
SHA256 a54f9ca0d5ce7c07647a393c00fc522fb5e963e4340f231263be675002ac444f
MD5 a83cd30bb79b82cfbb2c5e3718487d65
BLAKE2b-256 fac43faedfa58c47205e6aa1c1ce796c2863b423aa6d35fc8cb76b328599ef0f

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