A minimal todo app for Waybar

🔖 linux 

What is the simplest TODO app imaginable? In my opinion, it’s just a text file in your home directory named todo.txt. One line per item, edited with Vim. No need for additional software, websites, or electron apps.

Using standard unix tools, this setup is easy to extend. In my case, I wanted a persistent, nagging reminder of my constant procrastination. I also use waybar. Naturally then the end goal is a custom module.


Obviously, it displays the number of TODOs you have remaining. Additionally, hovering over the module will print display them in a tooltip. When you click a new Neovim instance will spawn opening the file.

Simple and effective. Here’s the code. I placed this is ~/.config/waybar/scripts/todo.sh:

COUNT=$(wc -l < ~/todo.txt)
TODOS=$(cat ~/todo.txt | head -c -1 - | sed -z 's/\n/\\n/g')
printf '{"text": "%s", "tooltip": "%s"}\n' "$COUNT" "$TODOS"

And then add a custom module to ~/.config/waybar/config:

 "custom/todo": {
        "exec": "~/.config/waybar/scripts/todo.sh",
        "return-type": "json",
        "format": "{} todos",
        "on-click": "wezterm -e nvim ~/todo.txt",
        "interval": 5,

Replace wezterm with your preferred terminal emulator and you should be good to go!

California Smoke

🔖 other 

Posting these here so I can look back in the future to remember when the forest fires started getting really bad.


The view at about 3:30 PM PST from the viewpoint near the Hwy 92/Skyline Blvd intersection.