Skip to content

Commands

Lukas Morgenstern edited this page Aug 11, 2025 · 3 revisions

This page is an overview of all commands that can be currently executed using the command line interface of the application.

General commands

exit

Usage:

>>>exit

Ends program execution.

help

Usage:

>>>help

Prints a list of available commands

sql-update

Usage:

>>>sql-update (sql statement)

Executes an update (e. g. UPDATE, DELETE,...) statement on the underlying SQLite database

Admin commands

add-admin

Usage:

>>>add-admin (username) (password)

Adds a new admin login to the web interface.

remove-admin

Usage:

>>>remove-admin (username)

Removes the given admin from the database

Task Level commands

get-level-ratio

Usage:

>>>get-level-ratio (level:i)

Prints the ratio in percent belonging to the given level:

Level Ratio
1 45.0%
2 30.0%
3 25.0%

Room commands

list-rooms

Usage:

>>>list-rooms

Prints a list of rooms in the database

get-room-level

Usage:

>>>get-room-level (room)

Prints the minimum graduation level needed for the given room

set-room-level

Usage:

>>>set-room-level (room) (level)

Sets the minimum graduation level needed for the given room to (level)

add-room

Usage:

>>>add-room (room) (level)

Adds the given room to the database

remove-room

Usage:

>>>remove-room (room)

Removes the given room from the database

Class commands

list-classes

Usage:

>>>list-classes

Prints a list of classes in the database

add-subject-to-class

Usage:

>>>add-subject-to-class (subject) (class)

Adds the given subject to the given class

set-class-label

Usage:

>>>set-class-label (old label) (new label)

Renames the given class

set-class-grade

Usage:

>>>set-class-grade (class) (grade:i)

Sets the grade of the class to grade

add-class

Usage:

>>>add-class (class label)

Adds a class with the given label if it does not yet exist. Leading zeros will be removed, and the letters are converted to lowercase.

Example:

  • "05A" -> "5a"

remove-class

Usage:

>>>remove-class (class)

Removes the given class from the database

School year commands

list-school-years

Usage:

>>>list-school-years

Lists all school years in the database

get-current-school-year

Usage:

>>>get-current-school-year

Prints data to the current school year. The current school year is always the last school year, sorted by the school year label.

Example:

  • "2025/2026" > "2024/2025

get-current-week

Usage:

>>>get-current-week

Prints the current week count of the active school year.

set-current-week

Usage:

>>>set-current-week (week count)

Sets the current week count of the active school year to week count

inc-week

Usage:

>>>inc-week

Increases the current week count of the active school year by one.

add-school-year

Usage:

>>>add-school-year (label) (week count)

Adds a new school year with the given label and week count to the database. (If it already exists, the week count is updated)

remove-school-year

Usage:

>>>remove-school-year (school year)

Removes the given school year from the database

User commands

regenerate-user-password

Usage:

>>>regenerate-user-password (user)

Generates a new password for user, changes the password of user to the generated password, and prints it afterwards.

generate-password

Usage:

>>>generate-password [seed=0]

Generates a random seed using system time and seed (seed can be any string, or an integer inside of long bounds), and generates a new password from the generated seed.

change-user-password

Usage:

>>>change-user-password (user) (new password)

Changes user's password to new password.

Subject commands

list-subjects

Usage:

>>>list-subjects

Lists all subjects in the database.

add-subject

Usage:

>>>add-subject (subject)

Adds the given subject to the database.

rename-subject

Usage:

>>>rename-subject (subject) : (new name)

Renames subject to new name.

remove-subject

Usage:

>>>remove-subject (subject)

Removes the given subject from the database.