Skip to main content

A Python exam tracker for the Lernphase .It allows you to keep track of all exams you have completed and the scores you achieved.

Project description

MIT License Code style: black Python Version from PEP 621 TOML

Examtracker

A Python exam tracker for the "Lernphase".
It allows you to keep track of all exams you have completed and the scores you achieved.

The application uses:

  • SQLAlchemy + SQLite for data storage
  • Textual as the TUI backend

Installation

Clone the repository

git clone https://github.com/Samhuw8a/Examtracker.git

Install the project

cd Examtracker
python -m pip install -e .

You might need to add the --break-system-packages flag to the install command


Usage

Once installed, you can start the program with:

examtracker

Configuration

You can change the location of the database file using a configuration file.

By default, the program searches for:

~/.config/examtracker/config.yml

Default config.yml

default configuration
database_path: "<path to repo>/data/test.db"
css_path: "<path to repo>/data/style.css"

Environment Variables

All configuration options can also be set using environment variables.

You can even change the location where the program searches for the configuration file.

Environment variables
EXAMTRACKER_DATABASE_PATH=/tmp/test.db
EXAMTRACKER_CSS_PATH=/tmp/style.css
EXAMTRACKER_CONFIG=/tmp/config.yml

Environment variables override values defined in config.yml.


Database Schema

exams

  • id
  • name
  • max_points
  • scored_points
  • class_id

classes

  • id
  • name
  • semester_id

semester

  • id
  • name (unique)

TODO

  • Handle SQL errors
  • Initialize database
  • Configuration file support
  • Abort edit and add screens
  • Cross-platform config discovery
  • Improve CSS

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

examtracker-1.1.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

examtracker-1.1.0-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file examtracker-1.1.0.tar.gz.

File metadata

  • Download URL: examtracker-1.1.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for examtracker-1.1.0.tar.gz
Algorithm Hash digest
SHA256 2e7816a174e650fa239330e49b4a8c659d4bff0b4be6d477e0d10deeac4555b6
MD5 61824ddd95d754d864c332bd726b147d
BLAKE2b-256 12d6c75f292a6cb3805b7cc893b4e68264b6fb943992f7282c35d281a9bd555e

See more details on using hashes here.

File details

Details for the file examtracker-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: examtracker-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for examtracker-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b7627c87ba34f63e8e5ec488013722ccad39718b03bcf4158d3f42049256c2cf
MD5 ceef21a5434f12aba58b3fb38da218fb
BLAKE2b-256 5125b5560910f1ba9e582691516845d5e5b48fca9842fb959e17624f04466332

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