Skip to main content

A desktop application for managing your personal "free time" bank.

Project description

Simple Timer Bank 🏦

Simple Timer Bank is a desktop application for managing your personal "free time." It helps you balance productive work with leisure activities like gaming 🎮, watching movies 🍿, or any other hobbies by treating your free time as a resource in a "bank."

For full feature details and usage guides, please see the Official Documentation.

SimpleTimerBank Screenshot

How It Works

  • Bank Your Time 💰: Deposit time you've set aside for leisure into your personal time bank.
  • Spend Your Time ⏳: When you're ready for a break, start a timer to begin "withdrawing" and consuming your banked time.
  • Overdraft Feature ⚠️: If your timer runs out but you're not ready to stop, the app automatically enters "overdraft mode." It will start drawing from your main bank balance, preventing abrupt interruptions while keeping track of the extra time used.
  • Automatic Refunds 🔄: If you end a session early, any unused time from the timer is automatically returned 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

There are two ways to install Simple Timer Bank:

Option 1: For Python Users (Recommended)

The recommended way to install is via pip or uv, which works on Windows, macOS, and Linux:

# Using pip
pip install simpletimerbank
# Or using uv
uv pip install simpletimerbank

This will automatically handle dependencies and make the simpletimerbank command available in your terminal.

Option 2: For Windows Users (Standalone EXE)

If you are on Windows and prefer not to use Python or pip, you can download a standalone executable:

  1. Go to the GitHub Releases page.
  2. Download the .zip file from the latest release.
  3. Unzip the file and run SimpleTimerBank.exe.

Usage

Once installed, you can run the application from your terminal:

simpletimerbank

Development Setup

If you wish to contribute to the project, follow these steps to set up a development environment.

  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 in editable mode with its dependencies
    uv pip install -e .
    
  3. Run the Application from Source:

    python -m src.simpletimerbank.main
    

Development Tasks

  • 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-1.1.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

simpletimerbank-1.1.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for simpletimerbank-1.1.0.tar.gz
Algorithm Hash digest
SHA256 a602b13dd8ec41154e9d777d16f5c002fb5ca527eeff34599c560b882df3f6b2
MD5 ff5770a7fffc7d015339ca83447e7fd2
BLAKE2b-256 fbf379a6395e8b7ced76e618e2d316537ac33228cec249555a0fb20d8d1e2551

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for simpletimerbank-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 25933e93188657f2c7734b68b12aa9b7a97ea589f0aad6f228dfa10e7178f9dc
MD5 5fac0d35ceb3607611b0013aa3ce9510
BLAKE2b-256 e115de645bf2efe20254c7580460f2687e8e920a174e996ee0c7e1612102dfbd

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