Skip to main content

timer bbank that is used for time management

Project description

Simple Timer Bank

A sophisticated desktop application built with PySide6 that allows you to manage time as a resource. Bank your time, then spend it on focused work sessions using a flexible timer system. This tool is designed to help you stay productive by making you conscious of how you spend your time.

SimpleTimerBank Screenshot

Core Concepts

  • Time as a Resource: Think of time like money in a bank. You can deposit it, withdraw it, and spend it.
  • The Time Bank: Your central repository of available time. The main display shows your current balance.
  • Transactions: Instantly add or remove time from your bank using the "Manage Bank Balance" controls.
  • Timer Sessions: "Spend" your banked time by running a countdown timer for a specific duration.
  • Overdraft Mode: If a timer session runs out, it doesn't just stop. It automatically enters "Overdraft Mode" and begins withdrawing time directly from your bank balance, complete with sound and system notifications.
  • Refunds: If you stop a timer session early, the unused time is instantly refunded to your bank.

Features

  • Digital Clock Displays: Clear, easy-to-read displays for both your bank balance and the active timer.
  • Intuitive Transaction Controls:
    • Deposit, instantly withdraw, or set your bank balance to a specific value.
    • Use relative preset buttons (+15m, -30m, etc.) to quickly adjust the transaction amount.
  • Flexible Timer Controls: Start, pause, resume, and stop timer sessions with clear, expanding buttons.
  • Audio-Visual Alerts: Receive non-blocking system notifications with custom sounds for key events like overdraft activation and bank depletion.
  • Persistent State: Your time bank balance is automatically saved when you close the application and reloaded on startup.
  • Polished UI: A clean, visually organized interface with distinct sections for different actions.

Installation and Running

For Users

  1. Download the Application:

  2. Unzip and Run:

    • Unzip the downloaded file.
    • Navigate into the SimpleTimerBank folder.
    • Double-click SimpleTimerBank.exe to start the application.

For Developers

  1. Clone the Repository:

    git clone https://github.com/your-username/SimpleTimerBank.git
    cd SimpleTimerBank
    
  2. Set up a Virtual Environment and Install: This project uses uv for package management.

    # Create a virtual environment
    uv venv
    # Activate it (example for Windows PowerShell)
    .venv\Scripts\Activate.ps1
    # Install the project and its dependencies
    uv pip install -e .
    
  3. Run the Application:

    python -m simpletimerbank.main
    

Development

  • Run Tests: make test or uv run pytest
  • Build Documentation: make doc
  • Publish Documentation: make publish-docs

License

This project is licensed under the MIT License.

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

simpletimerbank-0.0.1.tar.gz (148.1 kB view details)

Uploaded Source

Built Distribution

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

simpletimerbank-0.0.1-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

Details for the file simpletimerbank-0.0.1.tar.gz.

File metadata

  • Download URL: simpletimerbank-0.0.1.tar.gz
  • Upload date:
  • Size: 148.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for simpletimerbank-0.0.1.tar.gz
Algorithm Hash digest
SHA256 3fc3d64adb6d7bd4c91bfe80ee5cfccd61bad49108059694e1d2ac13b5986943
MD5 5f630b815d57becc6c8e7feff9b7882f
BLAKE2b-256 d9d84ead11dcdebab11c04b931e22fd1990863a1d0099c3272c06be02dab6e0b

See more details on using hashes here.

File details

Details for the file simpletimerbank-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for simpletimerbank-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3ff84dcad4aadc7efc1568c33905cb3ee546761afd8a63d74e50ad7af6ba5a66
MD5 4db85a2b5d941cc56cefffdf156971bc
BLAKE2b-256 961d4ce983d3573d6fa2f2f5efdc6a626fe637e5465662e0a081dea42f80168d

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