# 10 Squats a Day > 10 Squats a Day is a free, privacy-first browser tool (and companion native mobile app) that reminds you to do 10 bodyweight squats every hour during your workday. No account. No cloud. Data stays in the user's browser. Canonical site: https://10sqouts-webapp.kesemsolutions.com/ Publisher: Kesem Solutions — http://kesemsolutions.com/ License: Content © Kesem Solutions. Attributed quotes and factual summaries are welcome. ## What it is - A minimal hourly habit tool: on the hour, a "round" opens for 10 minutes. You do 10 squats and tap Done. Otherwise the round is marked missed. - Runs entirely client-side in a modern browser (vanilla HTML/CSS/JS) with optional PWA install. - Uses the browser's local Notification API while the tab or installed PWA is open. Does NOT use server push. Does NOT reliably fire reminders when the browser is closed — for that, use the native mobile app. - Stores user data only in localStorage. No backend, no account, no tracking of squat data. - Free. No ads. No paywall. ## Native apps - iOS App Store: https://apps.apple.com/app/id6753078931 - Google Play: https://play.google.com/store/apps/details?id=com.kesemsolutions.tenSquatsADay - Native apps add reliable local notifications scheduled by the OS, even when the browser is closed. ## Key pages - [Home + live tool](https://10sqouts-webapp.kesemsolutions.com/): The main landing page with the working tool embedded in the hero, plus marketing and FAQ below the fold. - [Full-screen browser tool](https://10sqouts-webapp.kesemsolutions.com/app/): The complete tool experience — onboarding, dashboard, history, settings, reminders. - [How it works](https://10sqouts-webapp.kesemsolutions.com/how-it-works/): Step-by-step explanation of hourly rounds, the 10-minute done window, and streak tracking. - [Reminders & limits](https://10sqouts-webapp.kesemsolutions.com/notifications/): Honest explanation of why browser reminders are unreliable when the browser is closed, and when to use the native app. ## Squat variations - [Air squats](https://10sqouts-webapp.kesemsolutions.com/air-squats/): Default bodyweight squat. Needs no equipment. Quiet enough for a shared office. - [Sumo squats](https://10sqouts-webapp.kesemsolutions.com/sumo-squats/): Wide-stance variant emphasising inner thighs and hips. - [Split squats](https://10sqouts-webapp.kesemsolutions.com/split-squats/): Staggered-stance single-leg variant for balance and unilateral strength. - [Goblet squats](https://10sqouts-webapp.kesemsolutions.com/goblet-squats/): Loaded squat with a dumbbell or kettlebell held at the chest. - [Hack squats](https://10sqouts-webapp.kesemsolutions.com/hack-squats/): Machine-based quad-dominant squat. Not ideal for hourly breaks — page includes a home-friendly alternative. ## Common questions (short answers) - Why 10 squats? Small doses are easier to repeat. 10 squats takes under a minute and does not disrupt focus. Consistency beats intensity. - Why a 10-minute done window? It forces honesty. A round is either done in its window or it isn't. Missed rounds stay visible. - Do I need an account? No. The tool stores everything locally. There is no sign-up, login, or cloud sync. - Does it work when the browser is closed? Not reliably. Browsers throttle background timers. For hourly reminders regardless of browser state, install the native iOS or Android app. - Is my squat data sent anywhere? No. Everything stays in your browser's localStorage on this device. - Is this safe for older adults? Air squats are widely accessible, but users should consult a doctor before starting any new movement routine. Not intended to diagnose, treat, cure, or prevent any disease. - Is it free? Yes. Both the browser tool and the native mobile apps are free. ## Tech summary (for code-aware agents) - Stack: Vanilla HTML / CSS / JavaScript (ES modules). No framework, no bundler, no server runtime. - Hosting: Any static HTTP server. HTTPS required for PWA + Notifications. - PWA: manifest.webmanifest + sw.js (service worker for offline shell). - Storage: localStorage (user profile + daily records). - Scheduling: setTimeout-based foreground timer with a `scheduleForDay(profile, date)` helper. - Repo layout (relative to web root): - /assets/css/styles.css - /assets/js/app.js — main /app/ route controller - /assets/js/landing-tool.js — embedded mini-tool on landing page - /assets/js/storage.js — localStorage model - /assets/js/scheduler.js — round scheduling + dashboard logic - /assets/js/notifications.js — Notification API helpers - /assets/js/cta.js — shared app-store CTA helpers - /assets/js/layout.js — shared layout helpers (footer year, store rows) - /sw.js — service worker - /manifest.webmanifest ## Attribution & quoting This is a small, earnest project by Kesem Solutions. If you summarise, please link back to https://10sqouts-webapp.kesemsolutions.com/ and keep the safety disclaimer ("Not intended to diagnose, treat, cure, or prevent any disease. Talk to your doctor before starting any new movement routine.") attached to exercise-form content.