gitwtfhub

wtf is vigil?

brokenwatch24/vigil — explained in plain English

Analysis updated 2026-05-18

4TypeScriptAudience · generalLicenseSetup · moderate

TL;DR

A self hosted, privacy first desktop app that tracks your focus and app usage locally, with optional pomodoro sessions, app blocking, and AI insights.

Mindmap

mindmap
  root((Vigil))
    What it does
      Tracks app usage
      Focus scoring
      Pomodoro sessions
    Tech stack
      Electron
      React
      SQLite
    Use cases
      Local productivity tracking
      App blocking
      AI insights
    Audience
      Privacy conscious users
      Productivity focused people

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

Why would anyone build with this?

REASON 1

Track your daily focus and app usage entirely on your own machine with no cloud account.

REASON 2

Run timed pomodoro style focus sessions that gently block distracting apps.

REASON 3

Review weekly, monthly, and yearly recaps of your productivity with charts and streaks.

REASON 4

Let an AI assistant like Claude read your stats and manage your reminders through a local API.

What's in the stack?

ElectronReactTypeScriptSQLiteFastify

How it stacks up

brokenwatch24/vigil0labs-in/vision-linkadarsh-me/image-sdk
Stars444
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatemoderateeasy
Complexity3/52/5
Audiencegeneraldeveloperdeveloper

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

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires Node 20+ and pnpm, Mac support is implemented but not yet verified on real hardware.

Wtf does this do

Vigil is a desktop app for tracking how you spend your time on your computer, built for people who want a productivity tracker that never sends their data to someone else's server. Everything it records lives in a single local database file on your own machine, and nothing leaves your computer unless you turn on an optional AI feature yourself. Once running, Vigil quietly watches which app or window is focused every couple of seconds and logs that as a session, detecting when you go idle or take a break without you having to press start or stop. It calculates a focus score for how deep your day was, supports timed pomodoro style focus sessions that gently block distracting apps for the duration, and lets you set goals like capping distracting app time to under thirty minutes a day, tracking a streak for staying under it. On the data side, it shows your day, week, month, and year of activity through timelines, bar charts, heatmaps, and a graph view showing how your attention moves between different apps over time. You can export any of this as a clean shareable image, or as a raw CSV or JSON file, or back up the whole database in one click. It also includes some gentler control features, like scheduled app blocking that never kills a process, shared reminders and to do lists, a small floating widget showing your current state, and global keyboard shortcuts. For more technical users, there is an optional local API and a connector for AI assistants like Claude that can read your stats and manage reminders on your behalf, plus an opt in feature that sends only aggregate numbers to an AI provider of your choice using your own API key. It is built with Electron, React, and TypeScript, runs on Windows and Mac, and is fully open source under the MIT license.

Yoink these prompts

Prompt 1
Clone this repo, run pnpm install and pnpm dev to launch Vigil locally
Prompt 2
Explain how the idle and break detection state machine works in this app
Prompt 3
Help me connect Vigil's MCP server so Claude can read my focus stats
Prompt 4
Walk me through setting up a category goal and streak for limiting distraction time
Prompt 5
Show me how to export my Vigil database and raw session data for backup

Frequently asked questions

wtf is vigil?

A self hosted, privacy first desktop app that tracks your focus and app usage locally, with optional pomodoro sessions, app blocking, and AI insights.

What language is vigil written in?

Mainly TypeScript. The stack also includes Electron, React, TypeScript.

How hard is vigil to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is vigil for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.