take-breath 0.1.3

A program that reminds you when to take a breath from your computer.
Documentation

Table of Contents

  1. Take Breath
  2. Algorithm
  3. Roadmap
  4. Building
  5. Usage
  6. Customization
  7. License
  8. Contribution

Take Breath

Take Breath is a program that reminds you when it is time to take a breath from your computer.

Algorithm

When the program starts, it starts a work time counter. When the work time counter is greater than 45 minutes, program notifies you to take a breath and starts a computer idle time counter. When the computer idle time counter is less than 15 minutes, program notifies you that your rest is too short and you should rest more. Otherwise it starts a work time counter again.

Roadmap

  • Basic algorithm implementation
  • Handle idle while work
  • Split app into library and binary parts
  • Customization features
  • CLI implementation
  • Better error handling
  • Documentation
  • [-] Support for various operating systems
    • Linux (X only)
    • Mac
    • Windows

Building

In order to compile Take Breath program you should have Rust toolchain installed. If you have, just run the following shell commands:

git clone https://github.com/markmelix/take-breath.git
cd take-breath
cargo build --release

It puts compiled take-breath file into the ./target/release directory.

You can also get compiled take-breath program without cloning the repository using the following command: "cargo install take-breath". It puts compiled take-breath file into the ~/.cargo/bin directory.

Usage

Note that for now only Linux is supported by the program

Just run the following command in a terminal: "take-breath &". It executes take-breath program as a background process.

Customization

When you first start a program, it will automatically create take-breath configuration directory with config.toml file in the one of the following directories depending on the system:

After creation config file has the following data:

[work_time]
duration = '45m'
idle_to_pause = '2m'

[rest_time]
duration = '15m'

This file is written in the TOML format. Description of each field:

License

Take Breath is provided under MIT License.

Contribution

Contributions are welcome.