Turn a cron expression into plain English and see its next run times in your browser.
🌐 Use it now: turhe123.github.io/cron-expression-explainer · free · open source · runs in your browser · works offline
Cron Expression Explainer is a free, open-source alternative to [removed].guru and cron expression generators, which tend to be ad-heavy, offer no multi-run preview for extended syntax, have no timezone support and are limited to five fields. Here your expressions never leave the device, there is no account, no ads and no limits, and the page works offline and can be installed as an app.
Cron Expression Explainer in the browser, light theme
Cron Expression Explainer on a phone
- Plain-English description of the expression, for example "At 09:00, Monday through Friday", with a copy button.
- Field-by-field breakdown; the cell for the field under your cursor is highlighted. Click a cell to select that part of the expression, or use Alt/Ctrl + Left/Right to jump between fields.
- Three modes: standard (5 fields), with seconds (6 fields), and Quartz (seconds, optional year,
?,L,W,#). - Lists, ranges, steps (including
5/15), month and weekday names, and Sunday as 0 or 7. - Macros such as
@daily,@hourly,@weekly,@monthlyand@yearly;@rebootis explained and marked as having no schedule. - Classic cron day-of-month / day-of-week rule: when both are restricted, either may match, and the description says so.
- Next 1 to 50 runs (10 by default) with weekday, date, time, zone abbreviation and relative text such as "in 3 hours".
- Time zone selector (all zones from
Intl.supportedValuesOfwhere available, with a fixed fallback list). Runs are also shown in your local time when another zone is chosen. Daylight saving is handled: nonexistent local times are skipped and repeated ones run once. - Optional start date and time, so you can check a schedule from any point.
- Invalid input is reported in a red message that points at the offending field and its value.
- Schedules that never fire (such as February 30) are reported rather than looping; the search horizon is 30 years.
- Preset chips (every minute, every 5 and 15 minutes, hourly, daily, weekdays, weekly, monthly, yearly, at reboot).
- Collapsible builder with dropdowns for minute, hour and day of month, and chips for months and weekdays, which rewrite the expression.
- Smart punctuation from mobile keyboards is normalized, and extra whitespace is collapsed.
- Export the listed runs as CSV (
cron-next-runs.csv) or as a calendar file (cron-schedule.ics). - Light and dark themes, usable with the keyboard, works at 390px wide.
Input: a cron expression typed or pasted into the box. Output: on-screen description and run table, plus CSV and ICS downloads. Limits: 1 to 50 runs per calculation; run search stops after 30 years; times are computed from your browser's own time zone data.
- Type or paste a cron expression, pick a preset, or open the builder and choose values from the menus. Switch the mode first if you use seconds or Quartz syntax.
- Read the sentence and the field breakdown. If something is wrong, the message shows which field.
- Choose a time zone, the number of runs and, optionally, a start time.
- Check the run table, then copy the expression or sentence, or download the runs as CSV or ICS.
- Nothing is uploaded. Parsing, descriptions and run times are all computed in your browser.
- No cookies.
- Page views are counted anonymously with GoatCounter (cookieless, open source).
- Works offline through a service worker after the first visit.
git clone https://github.com/turhe123/cron-expression-explainer
cd cron-expression-explainer
python3 -m http.server 4173Then open http://127.0.0.1:4173/. There is no build step.
npm i -D @playwright/test && npx playwright install chromium
npx playwright testNone: browser APIs only.
Cron Expression Explainer was written by Claude Code inside an automated pipeline, from a plain-English spec. No code or assets from any commercial product were used; it is a clean-room implementation of a feature set, not a copy.
What that means in practice:
- The full source is in this repo under the MIT license. Read it before you trust it with your files.
- Everything runs in your browser. It makes no network requests except an anonymous, cookieless page-view count (GoatCounter); your files never leave the device.
- The page is tested headless in Chromium (Playwright) before every release, but it has had less human review than hand-written software. Bug reports and pull requests are welcome.
If this saved you time, you can support the project on Ko-fi: https://ko-fi.com/leodavidai
Find more at https://turhe123.github.io/web-tools/
Also: free, open-source Mac apps built the same way, native Swift, no accounts, no telemetry.
MIT © Or Davidai Bachar

