Skip to content
tanaybhomia edited this page Aug 22, 2026 · 1 revision
Deep Dive Icon

Deep Dive

A hyper-focused, beautifully designed Pomodoro timer for GNOME that enforces strict discipline.

Download on Flathub

Platform: GNOME GTK4 License: GPLv3 GitHub Stars Flathub Downloads

Deep Dive Main Interface

Deep Dive is a focused productivity application built natively for the GNOME desktop environment using GTK4 and Libadwaita. It goes beyond standard Pomodoro timers by introducing strict mechanisms designed to prevent cheating and enforce true deep work.

Why Deep Dive?

Most pomodoro timers are just simple countdowns. Deep Dive is designed with the "Submerge" productivity philosophy in mind, stopping you from cheating yourself out of focus time.

  • Submerge Discipline: The ultimate "commit or quit" setting. When activated, you cannot pause or skip a session. You must either finish the 25 minutes or hit "Give Up" to discard the entire session completely.
  • Seamless Distraction Blocking: Deep Dive can automatically restrict access to distracting websites the second a Pomodoro starts, and instantly unblock them when you take a break.
  • Deep GNOME Integration: Deep Dive feels at home on Linux. It automatically puts your desktop in Do Not Disturb mode when focusing and creates full-screen Break Overlays to physically force you away from the screen when it's time to rest.

Core Features

  • Submerge Mode: A strict, custom deep-sea themed mode where skipping and pausing are disabled, ensuring uninterrupted focus.
  • Native Web Blocker: Block distracting websites (like Reddit or Twitter) system-wide automatically during focus sessions, powered by a seamless, one-time setup Polkit integration.
  • Break Overlays: When a break starts, a fullscreen overlay forces you to stop working. It flawlessly supports multi-monitor setups and displays motivational quotes.
  • Compact Mini-Player: Minimize the window into a sleek, floating mini-player that dynamically adapts to your Light/Dark system theme while you work.
  • Project Tracking: Manage different projects from a dedicated Preferences tab and automatically log your focused time for each, backed by a local SQLite database.
  • Do Not Disturb Sync: Automatically silences system notifications during focus sessions and restores them during breaks.

Installation

Deep Dive is officially distributed through Flathub, making it easy to install on any Linux distribution.

flatpak install flathub io.github.tanaybhomia.DeepDive

Contribution & Development

If you'd like to contribute to Deep Dive or build your own version, we have set up scripts to make local development frictionless.

Local Testing

You do not need to install the app or compile it with Meson just to test Python code changes. Run the following command in the project root to instantly launch the app from the source code:

./run.sh

Development Environment Setup

If you want to use the official Flathub release for your daily work, but also want a separate development version of Deep Dive in your app launcher for testing, run:

./install-dev.sh

This script creates a separate "Deep Dive (Development)" entry in your GNOME app grid. It uses a custom development icon and saves your test databases to a completely isolated folder, keeping your official Flatpak data safe. Any code changes you make in your IDE will instantly be reflected the next time you click the Development app icon.

Architecture

Deep Dive follows the GNOME Human Interface Guidelines (HIG) perfectly. It utilizes native Libadwaita widgets, Adwaita preferences windows, and leverages Polkit for secure, password-less /etc/hosts manipulation.

License

Deep Dive is free and open-source software licensed under the GNU General Public License v3.0 (GPL-3.0). See the LICENSE file for more details.

Stargazers

Thank you to everyone who has starred the repository and supported the project!

Star History Chart

Support

If you find Deep Dive helpful and want to support its development, you can buy me a coffee!

Support me on Ko-fi

Welcome

Documentation

Links

Clone this wiki locally