(https://github.githubassets.com) (https://avatars.githubusercontent.com) (https://github-cloud.s3.amazonaws.com) (https://user-images.githubusercontent.com/) (https://github.githubassets.com) (https://avatars.githubusercontent.com) (https://github.githubassets.com/assets/react-e27d1b3e03961e68.js) (https://github.githubassets.com/assets/react-compiler-runtime-4610bd6d3de9c049.js) (https://github.githubassets.com/assets/scheduler-58b860b049ca307c.js) (https://github.githubassets.com/assets/react-dom-e5fd46a22d5c4058.js) (https://github.githubassets.com/assets/react-dom-client-1b4a3ee065998cea.js) (https://github.githubassets.com/assets/react-is-e0b593954b4706d8.js) (https://github.githubassets.com/assets/react-jsx-runtime-4915cb0f5b3aff04.js) (https://github.githubassets.com/assets/react-reconciler-8e99e505c4429605.js) (../../github.githubassets.com/assets/light-99f877e9ddfc0e51.css) (../../github.githubassets.com/assets/light_high_contrast-48fdd0811afbab3c.css) (../../github.githubassets.com/assets/dark-79ad2ace604703b3.css) (../../github.githubassets.com/assets/dark_high_contrast-24484a076f02295f.css) (../../github.githubassets.com/assets/primer-primitives-ed9ca172356fd545.css) (../../github.githubassets.com/assets/primer-1d2c7f7b52a6068b.css) (../../github.githubassets.com/assets/global-54ba76e934a49d7c.css) (../../github.githubassets.com/assets/github-9a507bf7e8541e19.css) (../../github.githubassets.com/assets/repository-11ee8a031c040c1a.css) (../../github.githubassets.com/assets/code-2d56bdb0166c0238.css) (https://github.githubassets.com/assets/wp-runtime-c08af42c8174034c.js) (https://github.githubassets.com/assets/app-foundation-74e9766bd696d26a.js) (https://github.githubassets.com/assets/app-runtime-09f79a16809ec6e2.js) (https://github.githubassets.com/assets/fetch-utilities-5305162aa9984914.js) (https://github.githubassets.com/assets/ser-564408e9198dff6d.js) (../../github.githubassets.com/assets/app-runtime.08555632b8b4c82c.module.css) (https://github.githubassets.com/assets/catalyst-86a8f5de995615f8.js) (https://github.githubassets.com/assets/selector-observer-e88088f989b27670.js) (https://github.githubassets.com/assets/relative-time-element-7cdf4e0db98b997c.js) (https://github.githubassets.com/assets/by-6b3c07383371bf58.js) (https://github.githubassets.com/assets/ja9-36f036c13c2e3a4c.js) (https://github.githubassets.com/assets/kw-866fd9513ae95106.js) (https://github.githubassets.com/assets/r1-b075aab3204f32f9.js) (https://github.githubassets.com/assets/jz5-7c5d1669717041f8.js) (https://github.githubassets.com/assets/hj-5126390ff433704d.js) (https://github.githubassets.com/assets/j05-dce4d588268f0f7e.js) (https://github.githubassets.com/assets/runtime-helpers-6df03a157bacbc44.js) (https://github.githubassets.com/assets/aria-live-76b18916d0c8ec4d.js) (https://github.githubassets.com/assets/hotkey-5109c77d7ac61078.js) (https://github.githubassets.com/assets/react-core-5275d21716062494.js) (https://github.githubassets.com/assets/04-a76c47ec12c12e01.js) (https://github.githubassets.com/assets/urv-b9498edf8699ddd8.js) (https://github.githubassets.com/assets/4t-364e19c63d726e9a.js) (https://github.githubassets.com/assets/6ny-c969fbae697a356f.js) (https://github.githubassets.com/assets/yhq-3a209035a30b1a09.js) (https://github.githubassets.com/assets/z1v-da5b33b877bfa358.js) (https://github.githubassets.com/assets/wo-09f85d22a6c8931b.js) (https://github.githubassets.com/assets/9y-81cfe57dc9040f3e.js) (https://github.githubassets.com/assets/j0-41a4cf04cbd99503.js) (https://github.githubassets.com/assets/0p-81491ed0d9d666e2.js) (../../github.githubassets.com/assets/react-core.49521432a04bd65d.module.css) (https://github.githubassets.com/assets/n9-97e2e5539969aaaf.js) (https://github.githubassets.com/assets/ic-991f04433f366e7b.js) (https://github.githubassets.com/assets/primer-react-050aafaffcbc0f54.js) (https://github.githubassets.com/assets/ncx-9a860680a5f230b9.js) (https://github.githubassets.com/assets/j6-363f0ebf4f62f310.js) (https://github.githubassets.com/assets/t7l-bf6f21d7e7a43c35.js) (https://github.githubassets.com/assets/fe-7576d9b281e2106a.js) (https://github.githubassets.com/assets/wsr-5fd3071e5a9061ab.js) (https://github.githubassets.com/assets/0n-ecadb2ffe6b01ba2.js) (https://github.githubassets.com/assets/xv-51cb34754bda73a9.js) (https://github.githubassets.com/assets/n4u-6317ce1c31aed1db.js) (https://github.githubassets.com/assets/j8s-d90ce3a169b741ed.js) (https://github.githubassets.com/assets/la-de176c4ee471f2b3.js) (https://github.githubassets.com/assets/43-6eded7522a998126.js) (https://github.githubassets.com/assets/sd-6d34c0043618d320.js) (https://github.githubassets.com/assets/d6-43637518e8caa698.js) (https://github.githubassets.com/assets/ly-b96260703f546e4d.js) (https://github.githubassets.com/assets/mgq-93f58f229b2328b4.js) (https://github.githubassets.com/assets/on-95be29ba1ef725d9.js) (https://github.githubassets.com/assets/bi0-e2f78de823e39ca9.js) (https://github.githubassets.com/assets/b1-1dbc371cef78c3c1.js) (https://github.githubassets.com/assets/0l5-629d8eb51aea8084.js) (https://github.githubassets.com/assets/c2z-c92998400310b94b.js) (https://github.githubassets.com/assets/f9-038758dcbfe08dab.js) (https://github.githubassets.com/assets/0k-b7df0a74912a42bf.js) (https://github.githubassets.com/assets/sp-2bbb73a69162e23b.js) (https://github.githubassets.com/assets/og-93ae8b358505d372.js) (https://github.githubassets.com/assets/b9-69d9b60a1b1fcd59.js) (https://github.githubassets.com/assets/ec-ec74cb1fa6c31a3f.js) (https://github.githubassets.com/assets/du-bbe0f39cd2abe9a0.js) (https://github.githubassets.com/assets/ql0-6accb9e40c25a6a5.js) (https://github.githubassets.com/assets/20-32a6db98bc57337d.js) (https://github.githubassets.com/assets/dsj-cb1e4ddbce4f007b.js) (https://github.githubassets.com/assets/wp-9f5235d335ab624b.js) (https://github.githubassets.com/assets/ko6-9e80f7ac359e3c43.js) (https://github.githubassets.com/assets/uw-8c275f7ac25b7cf6.js) (https://github.githubassets.com/assets/bsb-4f4ac8c20da73fac.js) (https://github.githubassets.com/assets/w5-b6a7935106c47137.js) (https://github.githubassets.com/assets/fm-c8ed94d7e118a69c.js) (https://github.githubassets.com/assets/z-1081c2a87e2eaecc.js) (https://github.githubassets.com/assets/h0-010921512138e12f.js) (https://github.githubassets.com/assets/5p-a62c030e16a2f31f.js) (https://github.githubassets.com/assets/8vq-06b01e9bf76d46df.js) (https://github.githubassets.com/assets/g5-b43c7ae618ed81cb.js) (https://github.githubassets.com/assets/xc-f5d51b571cd317cb.js) (https://github.githubassets.com/assets/arw-51e8918a1b75a80f.js) (../../github.githubassets.com/assets/primer-react-css.7c5f404947919942.module.css) (../../github.githubassets.com/assets/ql0.bd9e6b542f167fd8.module.css) (../../github.githubassets.com/assets/z.6ca215cd00aa635b.module.css) (../../github.githubassets.com/assets/xc.13e027137438fd9f.module.css) (../../github.githubassets.com/assets/code-view.3a6690723bd89497.module.css) (https://github.githubassets.com/assets/hu-1fc0b2a167afc025.js) (https://github.githubassets.com/assets/fbr-ac48bf596ce02661.js) (../../github.githubassets.com/assets/primer-react-css.7c5f404947919942.module.css) (../../github.githubassets.com/assets/notifications-subscriptions-menu.0b5e4538ec7cbe6c.module.css) GitHub - kevinpondmind/ZenTabTimer: Minimal favicon countdown timer for Chrome tabs · GitHub (repo_source) (https://github.githubassets.com/) (https://github.com/opensearch.xml) (GitHub) (https://github.com/fluidicon.png) (GitHub) (https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg) (https://github.githubassets.com/favicons/favicon.png) (../../github.githubassets.com/favicons/favicon.svg) (../manifest.json) (ZenTabTimer.html#start-of-content) Skip to content (https://github.githubassets.com/assets/l7j-2ddd8b435dadae28.js) (https://github.githubassets.com/assets/keyboard-shortcuts-dialog-aa85c653958176aa.js) (../../github.githubassets.com/assets/primer-react-css.7c5f404947919942.module.css) (../../github.githubassets.com/assets/keyboard-shortcuts-dialog.fbf389cd452da95d.module.css) (https://github.githubassets.com/assets/2l-a4cd948f93d92068.js) (https://github.githubassets.com/assets/i26-234b338a64a2997c.js) (https://github.githubassets.com/assets/fz5-23f28c0f388769c9.js) (https://github.githubassets.com/assets/lht-26506ea833dda5be.js) (https://github.githubassets.com/assets/p1-76a75a6081059b19.js) (https://github.githubassets.com/assets/3d-82c347d20a13fb90.js) (https://github.githubassets.com/assets/tua-c4ca62c5e0e0318e.js) (https://github.githubassets.com/assets/4s-d5f4a92616cf44ce.js) (https://github.githubassets.com/assets/marketing-header-f52ff6f899d32160.js) (../../github.githubassets.com/assets/primer-react-css.7c5f404947919942.module.css) (../../github.githubassets.com/assets/primer-react-brand-css.6a01c236ff527e7e.module.css) (../../github.githubassets.com/assets/4s.f5f0f10079b3ce36.module.css) Navigation Menu (https://github.com/) (https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fkevinpondmind%2FZenTabTimer) Sign in Appearance settings Platform AI CODE CREATION (https://github.com/features/copilot) GitHub Copilot Write better code with AI (https://github.com/features/ai/github-app) GitHub Copilot app Direct agents from issue to merge (https://github.com/mcp) MCP Registry Integrate external tools DEVELOPER WORKFLOWS (https://github.com/features/actions) Actions Automate any workflow (https://github.com/features/codespaces) Codespaces Instant dev environments (https://github.com/features/issues) Issues Plan and track work (https://github.com/features/code-review) Code Review Manage code changes (https://github.com/features/code-quality) Code Quality Enforce quality at merge APPLICATION SECURITY (https://github.com/security/advanced-security) GitHub Advanced Security Find and fix vulnerabilities (https://github.com/security/advanced-security/code-security) Code security Secure your code as you build (https://github.com/security/advanced-security/secret-protection) Secret protection Stop leaks before they start EXPLORE (https://github.com/why-github) Why GitHub (https://docs.github.com) Documentation (https://github.blog) Blog (https://github.blog/changelog) Changelog (https://github.com/marketplace) Marketplace (https://github.com/features) View all features Solutions BY COMPANY SIZE (https://github.com/enterprise) Enterprises (https://github.com/team) Small and medium teams (https://github.com/enterprise/startups) Startups (https://github.com/solutions/industry/nonprofits) Nonprofits BY USE CASE (https://github.com/solutions/use-case/app-modernization) App Modernization (https://github.com/solutions/use-case/devsecops) DevSecOps (https://github.com/solutions/use-case/devops) DevOps (https://github.com/solutions/use-case/ci-cd) CI/CD (https://github.com/solutions/use-case) View all use cases BY INDUSTRY (https://github.com/solutions/industry/healthcare) Healthcare (https://github.com/solutions/industry/financial-services) Financial services (https://github.com/solutions/industry/manufacturing) Manufacturing (https://github.com/solutions/industry/government) Government (https://github.com/solutions/industry) View all industries (https://github.com/solutions) View all solutions Resources EXPLORE BY TOPIC (https://github.com/resources/articles?topic=ai) AI (https://github.com/resources/articles?topic=software-development) Software Development (https://github.com/resources/articles?topic=devops) DevOps (https://github.com/resources/articles?topic=security) Security (https://github.com/resources/articles) View all topics EXPLORE BY TYPE (https://github.com/customer-stories) Customer stories (https://github.com/resources/events) Events & webinars (https://github.com/resources/whitepapers) Ebooks & reports (https://github.com/solutions/executive-insights) Business insights (https://skills.github.com) GitHub Skills SUPPORT & SERVICES (https://docs.github.com) Documentation (https://support.github.com) Customer support (https://github.com/orgs/community/discussions) Community forum (https://github.com/trust-center) Trust center (https://github.com/partners) Partners (https://github.com/resources) View all resources Open Source COMMUNITY (https://github.com/open-source/sponsors) GitHub Sponsors Fund open source developers PROGRAMS (https://securitylab.github.com) Security Lab (https://maintainers.github.com) Maintainer Community (https://stars.github.com) GitHub Stars (https://archiveprogram.github.com) Archive Program REPOSITORIES (https://github.com/topics) Topics (https://github.com/trending) Trending (https://github.com/collections) Collections Enterprise ENTERPRISE SOLUTIONS (https://github.com/enterprise) Enterprise platform AI-powered developer platform AVAILABLE ADD-ONS (https://github.com/security/advanced-security) GitHub Advanced Security Enterprise-grade security features (https://github.com/features/copilot/copilot-business) Copilot for Business Enterprise-grade AI features (https://github.com/enterprise/premium-support) Premium Support Enterprise-grade 24/7 support (https://github.com/pricing) Pricing Search / (https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fkevinpondmind%2FZenTabTimer) Sign in (https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=kevinpondmind%2FZenTabTimer) Sign up Appearance settings You signed in with another tab or window. (ZenTabTimer.html) Reload to refresh your session. You signed out in another tab or window. (ZenTabTimer.html) Reload to refresh your session. You switched accounts on another tab or window. (ZenTabTimer.html) Reload to refresh your session. Dismiss alert (https://github.com/kevinpondmind) kevinpondmind / (ZenTabTimer.html) ZenTabTimer Public (https://github.com/login?return_to=%2Fkevinpondmind%2FZenTabTimer) Notifications You must be signed in to change notification settings (https://github.com/login?return_to=%2Fkevinpondmind%2FZenTabTimer) Fork (0) 0 (https://github.com/login?return_to=%2Fkevinpondmind%2FZenTabTimer) Star (2) 2 (ZenTabTimer.html) Code (Not available) (https://github.com/kevinpondmind/ZenTabTimer/issues) Issues (0) 0 (https://github.com/kevinpondmind/ZenTabTimer/pulls) Pull requests (0) 0 (https://github.com/kevinpondmind/ZenTabTimer/actions) Actions (Not available) (https://github.com/kevinpondmind/ZenTabTimer/projects) Projects (Not available) (https://github.com/kevinpondmind/ZenTabTimer/security) Security and quality (0) 0 (https://github.com/kevinpondmind/ZenTabTimer/pulse) Insights (Not available) Additional navigation options (ZenTabTimer.html) Code (https://github.com/kevinpondmind/ZenTabTimer/issues) Issues (https://github.com/kevinpondmind/ZenTabTimer/pulls) Pull requests (https://github.com/kevinpondmind/ZenTabTimer/actions) Actions (https://github.com/kevinpondmind/ZenTabTimer/projects) Projects (https://github.com/kevinpondmind/ZenTabTimer/security) Security and quality (https://github.com/kevinpondmind/ZenTabTimer/pulse) Insights (ZenTabTimer.html) main (https://github.com/kevinpondmind/ZenTabTimer/branches) Branches (https://github.com/kevinpondmind/ZenTabTimer/tags) Tags (https://github.com/kevinpondmind/ZenTabTimer/branches) (https://github.com/kevinpondmind/ZenTabTimer/tags) (Go to file) () Go to file Code Open more actions menu Latest commit History (https://github.com/kevinpondmind/ZenTabTimer/commits/main/) 6 Commits (https://github.com/kevinpondmind/ZenTabTimer/commits/main/) 6 Commits Folders and files Name Name (Last commit message) Last commit message (Last commit date) Last commit date (README.md) (https://github.com/kevinpondmind/ZenTabTimer/blob/main/README.md) README.md (README.md) (https://github.com/kevinpondmind/ZenTabTimer/blob/main/README.md) README.md (timer.html) (https://github.com/kevinpondmind/ZenTabTimer/blob/main/timer.html) timer.html (timer.html) (https://github.com/kevinpondmind/ZenTabTimer/blob/main/timer.html) timer.html View all files Repository files navigation (ZenTabTimer.html#) README Moreitems 🧘 ZenTabTimer (ZenTabTimer.html#-zentabtimer) "ZenTabTimer lets you launch a timer for a work session, and visually track how much time's left in that browser tab while you work elsewhere in other tabs. Make sure to pin the tab for the best experience. The rest of this readme and the rest of this "app" is aggressively vibegentically agenteered. Is it AI slop? Yes. Can AI slop still be beautiful and wonderous at times? You tell me." — Kevin Kraftsmith A little pie that knows when to leave the party. Stop squinting at 01:48:10 like it’s ancient Sanskrit. ZenTabTimer turns your Chrome tab favicon into a fat, calm countdown pie — full at the start, empty when it’s time to stand up, stretch, and pretend you hydrated. 🥧⏱️✨ No app store. No npm. No “sync your chakras to the cloud.” Just one HTML file and a browser that believes in you. ⚠️ A solemn (lol) disclaimer (ZenTabTimer.html#️-a-solemn-lol-disclaimer) This project is vibe-coded, AI-generated, agentically engineered slop — the artisanal kind, hand-stirred by a human who said “make it zen” and an agent who said “bet.” If it works: 🎉If it doesn’t: 🫠 chef’s kiss, as intended If the pie looks like a lime Pac-Man: you’re welcome. No warranty. No SLA. No spiritual enlightenment guarantee. Timer may cause sudden awareness that you’ve been doomscrolling for 50 minutes. 🐉 🎯 What it does (ZenTabTimer.html#-what-it-does) Feature Vibes 🟢 Fat favicon pie Empties clockwise as time runs out — glanceable in your peripheral vision 🏷️ Tab title Shows ZenTabTimer next to the pie ⏱️ Presets 5 / 10 / 50 / 60 / 90 / 120 minutes — click and go ✍️ Custom minutes Because sometimes “one more hour” is a personality trait 🔔 Ding + notification Roughly-on-time “you’re done” energy (pin the tab; see caveats) The page UI is intentionally boring. You’re not supposed to look at it. You’re supposed to look at other tabs while this one silently judges your focus. 👁️ 🚀 Quick start (pie to go) (ZenTabTimer.html#-quick-start-pie-to-go) Clone or download this repo. Open timer.html in Chrome: Double-click it, or Go to file:///path/to/ZenTabTimer/timer.html Pin the tab (right-click tab → Pin) so Chrome doesn’t ghost your session. 📌 Click a preset. Watch the favicon fill with purpose. Work. Exist. Softly. Bookmark it. Name the bookmark something profound like “⏱ pie.” 🔔 Notifications: don’t get crusty (ZenTabTimer.html#-notifications-dont-get-crusty) Chrome is weird about file:// notifications — it often won’t even ask for permission. Serving locally works better: cd ZenTabTimer python3 -m http.server 8000 Then open (http://localhost:8000/timer.html) http://localhost:8000/timer.html , start a timer, and Allow notifications when prompted. The in-page ding still works without notification permission. The OS toast is just extra seasoning. 🧂 🧠 How it works (for the curious crust) (ZenTabTimer.html#-how-it-works-for-the-curious-crust) One self-contained timer.html — HTML + CSS + JS, no backend, no build step. Deadline math: endsAt = now + duration (so throttled background tabs don’t “lose seconds” like a forgetful oven timer). Each tick redraws a tiny canvas pie and sets it as the favicon. On finish: beep + optional Notification . If Chrome naps through the exact moment: wake-up listeners catch up and announce “done” when the page stirs again. 😴→😮 🧘 Suggested ritual (ZenTabTimer.html#-suggested-ritual) Pin ZenTabTimer. Hit 50 . Go do the thing. When the pie is gone, the universe (or at least your OS) whispers: timer done. Touch grass. Or coffee. Or both. ☕🌿 📜 License / liability / karma (ZenTabTimer.html#-license--liability--karma) Do whatever you want with this. If it breaks, you get to keep both pieces of the pie. 🥧💔 — shipped with love, recursion, and an inappropriate number of emojis About Minimal favicon countdown timer for Chrome tabs Resources (ZenTabTimer.html#readme-ov-file) Readme (https://github.com/kevinpondmind/ZenTabTimer/activity) Activity Stars 2 stars Watchers 0 watching Forks (https://github.com/kevinpondmind/ZenTabTimer/forks) 0 forks (https://github.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2Fkevinpondmind%2FZenTabTimer&report=kevinpondmind+%28user%29) Report repository Releases Packages Contributors Languages Footer (https://github.com) © 2026 GitHub, Inc. Footer navigation (https://docs.github.com/site-policy/github-terms/github-terms-of-service) Terms (https://docs.github.com/site-policy/privacy-policies/github-privacy-statement) Privacy (https://github.com/security) Security (https://www.githubstatus.com/) Status (https://github.community/) Community (https://docs.github.com/) Docs (https://support.github.com?tags=dotcom-footer) Contact Manage cookies Do not share my personal information You can’t perform that action at this time.