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.
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
-
Download the Application:
- Get the latest version from the releases page or directly via this link: SimpleTimerBank_v1.1.0.zip
-
Unzip and Run:
- Unzip the downloaded file.
- Navigate into the
SimpleTimerBankfolder. - Double-click
SimpleTimerBank.exeto start the application.
For Developers
-
Clone the Repository:
git clone https://github.com/your-username/SimpleTimerBank.git cd SimpleTimerBank
-
Set up a Virtual Environment and Install: This project uses
uvfor 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 .
-
Run the Application:
python -m simpletimerbank.main
Development
- Run Tests:
make testoruv 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3fc3d64adb6d7bd4c91bfe80ee5cfccd61bad49108059694e1d2ac13b5986943
|
|
| MD5 |
5f630b815d57becc6c8e7feff9b7882f
|
|
| BLAKE2b-256 |
d9d84ead11dcdebab11c04b931e22fd1990863a1d0099c3272c06be02dab6e0b
|
File details
Details for the file simpletimerbank-0.0.1-py3-none-any.whl.
File metadata
- Download URL: simpletimerbank-0.0.1-py3-none-any.whl
- Upload date:
- Size: 26.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ff84dcad4aadc7efc1568c33905cb3ee546761afd8a63d74e50ad7af6ba5a66
|
|
| MD5 |
4db85a2b5d941cc56cefffdf156971bc
|
|
| BLAKE2b-256 |
961d4ce983d3573d6fa2f2f5efdc6a626fe637e5465662e0a081dea42f80168d
|