[7ce6506] | 1 | # Flowtimer
|
---|
| 2 |
|
---|
| 3 | Flowtimer is a customizable Pomodoro timer designed to enhance productivity by breaking work into intervals, typically 25 minutes long, separated by short breaks. It allows you to configure your work and break sessions through a CSV file and includes predefined phases of activity to help you stay focused.
|
---|
| 4 |
|
---|
| 5 | ## Features
|
---|
| 6 |
|
---|
| 7 | - **Configurable Sessions:** Define your own work, short break, and long break durations through a CSV file.
|
---|
| 8 | - **Predefined Phases:** Start with standard Pomodoro phases or create your own.
|
---|
| 9 | - **Simple Interface:** Easy-to-use command-line interface for starting and managing your sessions.
|
---|
| 10 | - **Progress Tracking:** Visual feedback on time remaining for each phase.
|
---|
| 11 | - **Customizable Cycle:** Choose how many work sessions you want before taking a longer break.
|
---|
| 12 |
|
---|
| 13 | ## Getting Started
|
---|
| 14 |
|
---|
| 15 | ### Prerequisites
|
---|
| 16 |
|
---|
| 17 | Ensure you have the following installed on your machine:
|
---|
| 18 |
|
---|
| 19 | - Python 3.x
|
---|
| 20 |
|
---|
| 21 | ### Installation
|
---|
| 22 |
|
---|
| 23 | 1. Clone the repository:
|
---|
| 24 | ```bash
|
---|
| 25 | git clone https://github.com/yourusername/flowtimer.git
|
---|
| 26 | cd flowtimer
|
---|
| 27 | ```
|
---|
| 28 |
|
---|
| 29 | 2. Install the required dependencies:
|
---|
| 30 | ```bash
|
---|
| 31 | pip install -r requirements.txt
|
---|
| 32 | ```
|
---|
| 33 |
|
---|
| 34 | ### Usage
|
---|
| 35 |
|
---|
| 36 | 1. **Create or Modify Configuration:**
|
---|
| 37 |
|
---|
| 38 | Flowtimer reads its configuration from a CSV file. The file should define the duration of each phase (in minutes) and the order of phases.
|
---|
| 39 |
|
---|
| 40 | Example `config.csv`:
|
---|
| 41 | ```csv
|
---|
| 42 | phase,duration
|
---|
| 43 | work,25
|
---|
| 44 | short_break,5
|
---|
| 45 | work,25
|
---|
| 46 | short_break,5
|
---|
| 47 | work,25
|
---|
| 48 | long_break,15
|
---|
| 49 | ```
|
---|
| 50 |
|
---|
| 51 | This configuration represents a standard Pomodoro cycle: three work sessions of 25 minutes each, separated by 5-minute short breaks, and followed by a 15-minute long break.
|
---|
| 52 |
|
---|
| 53 | 2. **Run Flowtimer:**
|
---|
| 54 | ```bash
|
---|
| 55 | python flowtimer.py --config config.csv
|
---|
| 56 | ```
|
---|
| 57 |
|
---|
| 58 | This will start the timer based on the phases and durations specified in the `config.csv` file.
|
---|
| 59 |
|
---|
| 60 | 3. **Adjusting Configuration:**
|
---|
| 61 | To change the timings or the order of phases, simply edit the `config.csv` file and rerun the script.
|
---|
| 62 |
|
---|
| 63 | ### Default Configuration
|
---|
| 64 |
|
---|
| 65 | If no configuration file is provided, Flowtimer will use the following default settings:
|
---|
| 66 |
|
---|
| 67 | - 25 minutes of work
|
---|
| 68 | - 5 minutes of short break
|
---|
| 69 | - 4 work sessions before a 15-minute long break
|
---|
| 70 |
|
---|
| 71 | ### Command-line Options
|
---|
| 72 |
|
---|
| 73 | - `--config <file>`: Specify a custom CSV configuration file.
|
---|
| 74 | - `--start`: Start the Pomodoro timer with the current configuration.
|
---|
| 75 | - `--reset`: Reset the timer to default settings.
|
---|
| 76 |
|
---|
| 77 | ### Example
|
---|
| 78 |
|
---|
| 79 | ```bash
|
---|
| 80 | python flowtimer.py --config myconfig.csv
|
---|
| 81 | ```
|
---|
| 82 |
|
---|
| 83 | This command will start Flowtimer with a custom configuration provided in `myconfig.csv`.
|
---|
| 84 |
|
---|
| 85 | ## Contributing
|
---|
| 86 |
|
---|
| 87 | Contributions are welcome! Please submit a pull request or open an issue to discuss any changes or improvements.
|
---|
| 88 |
|
---|
| 89 | ### To-Do
|
---|
| 90 |
|
---|
| 91 | - [ ] Add GUI support
|
---|
| 92 | - [ ] Integrate sound notifications
|
---|
| 93 | - [ ] Add a pause/resume feature
|
---|
| 94 |
|
---|
| 95 | ## License
|
---|
| 96 |
|
---|
| 97 | Flowtimer is open-source software licensed under the [MIT License](LICENSE).
|
---|
| 98 |
|
---|
| 99 | ## Acknowledgments
|
---|
| 100 |
|
---|
| 101 | Special thanks to the Pomodoro Technique® for inspiring this tool.
|
---|