Skip to content

Latest commit

 

History

History
85 lines (61 loc) · 2.02 KB

README.md

File metadata and controls

85 lines (61 loc) · 2.02 KB

Pomobar: A waybar compatible pomodoro timer (WIP)

What is Pomobar?

Pomobar is a pomodoro timer that is compatible with waybar. This project is a work in progress.

How does Pomobar work?

Pomobar is a client-server application. The server is responsible for keeping track of the time and the client is responsible for sending commands to the server. Connection is established via a unix socket. The server/client communication is done via raw bytes now.

How to use Pomobar?

  1. Clone the repository
git clone <this-repo>
  1. Build the project
make
  1. Run server in background
./pomobar-server &; disown
  1. Run client for connection test
./pomobar-client status
  1. If all is well, add the following to your waybar config
{
    ...
    "modules-<left|center|right>": [..., "custom/pomobar", ...],
    ...

    "custom/pomobar": {
        "format"                   : "{}",
        "interval"                 : 1,
        "exec"                     : "/path/to/pomobar-client status",
        "on-click"                 : "/path/to/pomobar-client pause",
        "on-click-middle"          : "/path/to/pomobar-client reset",
        "return-type"              : "json"
    },
}
  1. Reload waybar
killall -q waybar
waybar &; disown

Screenshots

image image image

To-Do List

  • Basic timer functionality
  • Waybar integration
  • Config file support
    • Configurable timer
    • Configurable waybar module
    • Configurable work/break command/script/icon
  • Optimizations
    • Use JSON for server/client communication
    • Use a more efficient way to keep track of time
    • Code cleanup
  • Documentation
  • Error handling
  • Add more features