Skip to content

vnsonvo/pomodoro-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pomodoro CLI

Pomodoro CLI is a simple yet powerful command-line tool designed to help you manage your time efficiently using the Pomodoro Technique. Built in Go and leveraging the Bubble Tea library, it provides a clean, interactive interface to conduct focused work and break sessions.

Demo

Demo

Features

  • Customizable Work and Break Lengths: Specify the duration of each session directly through the command line.
  • Interactive Text-Based UI: Utilize an interactive textarea for command input and see live session updates.
  • Session Persistence: Sessions are saved in db.json, allowing you to review your productivity data over time.
  • Session Review: Retrieve and display sessions from any specific date.

Installation

To run this application, you need to have Go installed on your machine. Download Go if you haven't installed it yet.

  1. Clone the repository:
git clone https://github.com/vnsonvo/pomodoro-cli.git
cd pomodoro-cli
  1. Build the application:
go build -o pomodoro
  1. Run the application:
./pomodoro

Usage

The application supports various commands to manage your Pomodoro sessions:

  • Start a Work Session:
    • s : Start a work session for minutes. Default is 25 minutes if no time is specified.
  • Start a Break:
    • b : Start a break for minutes. Default is 5 minutes if no time is specified.
  • List Today's Completed Sessions:
    • l: Lists all sessions completed today.
  • List Sessions on a Specific Date:
    • l YYYY-MM-DD: Lists all sessions completed on YYYY-MM-DD.
  • Quit:
    • q: Exit the application.

Example Commands

s 50         # Starts a 50-minute work session
b 10         # Starts a 10-minute break
l            # Lists today's completed sessions
l 2023-09-30 # Lists sessions from September 30, 2023
q            # Quits the application

Improvement

  • Starting and Ending Sounds: We've added a sound that plays when you start and finish each session.
  • Notifications: get a popup message when your session is over. This makes sure we don't have to keep checking the time ourselves.

Contributing

Contributions are welcome! Please feel free to submit a pull request.