Skip to content

0xZeyad11/termadoro

Repository files navigation

Termadoro

  • A beautiful terminal-based Pomodoro tracker with tag support and real-time reports.

✅ Features

  • Tag your pomodoro sessions.
  • Control the pomodoro timer by pausing/resuming the timer.
  • Cross-platform notifications after finishing the session.
  • Get a report of your past pomodoro sessions and total durations.
  • View a report of your top 6 tags (topics) you've worked on.

Install

$ npm install --global termadoro

CLI

  Usage
    $ terma
  Options
  	--name  Your name
      --session Session Length
  	--tags 
  	--report  <logs , tags>

  Examples
    $ terma --session 1h20m1s
    $ terma --session 1h20m1s --tags "focus,deepwork"
    $ terma --report logs    "Detailed Logs of past pomodoros"
    $ terma --report tags    "Detailed Logs of past tags and its durations"

NOTE: Any Pomodoro duration less than 10 minutes won't be saved in the log 

📷 Screenshots

Pomodoro Logs Tags Logs
Timer Photo 4

⚙️ Technologies

  1. Ink + React
  2. Nodejs
  3. Typescript
  4. Sqlite3
  5. Vitest (Testing Framework)

🔗 Dependencies


📝 DB Schema

erDiagram
    TAGS {
        INTEGER id PK
        TEXT name "Unique, NOCASE"
    }
    POMODOROS {
        INTEGER id PK
        TEXT start_datetime "Unique timestamp"
        TEXT end_datetime "Unique timestamp"
        INTEGER duration
    }
    POMODORO_TAGS {
        INTEGER id PK
        INTEGER tags_id FK
        INTEGER pomodoro_id FK
    }

    TAGS ||--o{ POMODORO_TAGS : has
    POMODOROS ||--o{ POMODORO_TAGS : has
Loading

About

A beautiful terminal-based Pomodoro tracker with tag support and real-time reports.

Topics

Resources

Stars

Watchers

Forks

Contributors