whatisgithub

What is focusd?

bibekbhusal0/focusd — explained in plain English

Analysis updated 2026-05-18

34RustAudience · developerComplexity · 2/5LicenseSetup · easy

In one sentence

A terminal-based pomodoro timer for Linux and macOS with a background daemon, a visual TUI, history tracking, and Waybar status bar integration.

Mindmap

mindmap
  root((focusd))
    What it does
      Background daemon timer
      Terminal TUI
      History and stats
      Notifications
    Tech stack
      Rust
      Waybar integration
      Hyprland keybinds
    Use cases
      Focused work tracking
      Status bar display
      Custom presets
    Audience
      Linux terminal users
      Tiling WM users
    Requirements
      Homebrew or yay or cargo

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Track focused work sessions with a pomodoro timer that keeps running in the background.

USE CASE 2

Show your current timer status and streak directly in a Waybar status bar module.

USE CASE 3

Review history and statistics of past focus sessions.

USE CASE 4

Switch between different timer presets like standard pomodoro or a longer deep work block.

What is it built with?

RustWaybarHyprland

How does it compare?

bibekbhusal0/focusdironic-org/ironicnesthings/fuskyom
Stars343434
LanguageRustRustRust
Setup difficultyeasymoderatemoderate
Complexity2/53/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min
Use, modify, and distribute freely, including for commercial purposes, as long as you keep the copyright notice.

So what is it?

FocusD is a pomodoro timer that lives in your terminal, built for people who want more than a basic countdown clock. It runs as a background process, called a daemon, so your timer keeps counting even if you close the visual interface, and multiple terminal windows can show the same, synced timer state. The main way to use FocusD is through its text based interface, which shows a timer page, a history of past sessions, and a statistics page with details like your current streak of focused days. You start and control the timer with simple keyboard shortcuts, such as pressing space to start or pause, or jumping ahead to the next work or break session. The tool also sends a notification when a timer finishes. FocusD supports different presets, so you are not locked into the traditional twenty five minute work block. The default configuration file lets you set custom work, short break, and long break lengths, and you can define multiple named presets, such as a longer deep work block, and switch between them. For people using the Waybar status bar on Linux, common on window managers like Hyprland, FocusD can output its current status as JSON, which Waybar can display directly, including icons and colors that change depending on whether you are working or on a break. The README also shows examples of wiring FocusD into custom keyboard shortcuts and quick launch menus. The project is written in Rust and can be installed through Homebrew on macOS, through the AUR helper yay on Arch Linux, or built from source using Cargo. It is licensed under the MIT license. The author describes this as a personal project built partly to learn Rust, and notes that it is still under active development, so some rough edges are expected. Pull requests are not currently being accepted, though bug reports and feature suggestions are welcome.

Copy-paste prompts

Prompt 1
Help me install focusd on Arch Linux using yay and set it up with a custom deep work preset.
Prompt 2
Show me how to add a focusd Waybar module that changes icon and color based on work or break state.
Prompt 3
Explain how to set up Hyprland keybindings to start, pause, and skip focusd sessions.
Prompt 4
Walk me through building focusd from source with cargo and configuring config.toml.

Frequently asked questions

What is focusd?

A terminal-based pomodoro timer for Linux and macOS with a background daemon, a visual TUI, history tracking, and Waybar status bar integration.

What language is focusd written in?

Mainly Rust. The stack also includes Rust, Waybar, Hyprland.

What license does focusd use?

Use, modify, and distribute freely, including for commercial purposes, as long as you keep the copyright notice.

How hard is focusd to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is focusd for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.