Skip to content
parmsamPublic

About

๐Ÿ“ A notepad that does the math. Natural-language calculator for units, currencies, percentages and variables. Free, open source, offline-first PWA; notes stay in your browser.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

ย 

History

56 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Reckon

A notepad that does the math.
Type text and numbers naturally, and see the answers line by line.

Open Reckon โ†’

CI status Deploy status License: MIT PWA: works offline

Reckon showing a freelance invoice note: each line's answer appears in a column on the right, with a sidebar listing other notes.

Docs ยท Syntax ยท Glossary ยท Units ยท For LLMs

Reckon is a free, open-source take on notepad calculators like Numi and Soulver. It runs in any browser, installs as an app, works offline, and keeps your notes on your own device.

Features

Available now

  • Answers as you type, aligned beside each line. Click an answer, or press โŒ˜/Ctrl โ‡ง C, to copy it.
  • Natural syntax: 20% of 50, 10% off 80, 5 as % of 20, 3 apples + 2 apples
  • Variables and references: hourly rate = 85, prev, line3, sum, avg, count, min, max
  • Units: 5 km in miles, 60 mph in km/h, 6 ft 2 in in cm, 72 ยฐF in ยฐC, 1 GiB in MB, 2 cups in ml, CSS 12pt in px
  • Currencies and crypto: $30 in EUR, โ‚ฌ20 + $5, 0.01 BTC in USD, with rates cached for offline use
  • Units that cancel: hourly rate = $85/h, then 12.5 h ร— hourly rate is $1,062.50
  • Dates and time zones: today + 2 weeks, days until Dec 25, next friday at 3pm, 3pm PST in London, time in Tokyo
  • Conditions and comparisons: if total > $100 then 10% off total else total, 5 km > 3 miles, and/or/not, bitwise & | xor << >>
  • Your own functions and units: tip(bill, rate) = bill ร— rate, 1 sprint = 2 weeks, even a metric 1 cup = 250 ml
  • Precise decimals: 0.1 + 0.2 is 0.3, not 0.30000000000000004
  • Many notes with search, pinning, trash and undo
  • Share links: the note is compressed into the URL itself, so no server ever sees it
  • Export with answers as aligned text, Markdown tables or a printable web page
  • Backup and restore as JSON, plus import of .txt and .md files
  • Syncs between open tabs and works offline once loaded
  • Command palette (โŒ˜/Ctrl K), autocomplete for variables, units and functions, and a row of math keys above the phone keyboard
  • Settings: theme, font size, number format, decimal places, angle unit, and a switch that turns off all network requests
  • Light and dark themes, a phone layout, and screen reader support

For developers and AI (see the docs)

  • Links that open a note: โ€ฆ/reckon/#/new?text=<percent-encoded note>, easy for any LLM or script to write
  • engine.js: the calculation engine as one ES module, evaluate(note) in Node, Deno or a browser
  • llms.txt, a prompt that makes any chat assistant answer with a clickable Reckon link, and an agent skill

Syntax at a glance

What Examples
Numbers 1,000 ยท 1_000 ยท 1.5e3 ยท 1.5k ยท 2M ยท 3bn ยท 2 million ยท 0xFF ยท 0b1010 ยท ยฝ
Operators + - * / ^ mod ! ยท ร— รท โˆ’ ยท plus, times, divided by ยท 3 x 4 ยท 2(3 + 4) ยท 2pi
Percentages 20% of 50 ยท 50 + 10% ยท 10% off 50 ยท 10% on 50 ยท 5 as % of 20 ยท 5 is what % of 20 ยท 20% of what is 5
Variables rent = 1,200 ยท multi-word names: monthly rent * 12
References prev / ans (last answer) ยท line3 (answer on line 3)
Totals sum / total ยท avg ยท count ยท min ยท max (each covers the lines since the last heading or blank line)
Functions sqrt ยท cbrt ยท root(x, n) ยท round(x, 2) ยท floor ยท ceil ยท abs ยท sin / cos / tan (degrees) ยท log ยท ln ยท exp ยท fact
Constants pi / ฯ€ ยท e ยท tau ยท phi
Output formats 255 in hex ยท 10 in binary ยท 8 as oct ยท 1500 in sci
Units 5 km in miles ยท 1 m + 20 cm ยท 60 km/h in m/s ยท 3 m ร— 4 m ยท sqrt(16 mยฒ) ยท 1/2 cup ยท 5' 10" ยท 1 h 30 min ยท 100 ยฐC in ยฐF ยท 1 GB in MiB ยท 24px in pt
Dates today ยท tomorrow at 9am ยท next friday ยท Dec 25 ยท 2026-07-04 ยท today + 2 weeks ยท Jan 31 + 1 month ยท Dec 25 - today ยท days until Dec 25 ยท 3 days ago ยท in 45 min
Times and zones 3pm ยท 15:45 ยท noon ยท 3pm + 90 min ยท 5pm - 3pm ยท now in Tokyo ยท time in New York ยท 3pm PST in London ยท 9:00 EST to CET ยท 3pm in UTC+5:30
Currency $30 ยท โ‚ฌ20 + $5 ยท 100 GBP to yen ยท 20 canadian dollars in USD ยท 0.5 BTC in USD ยท 100k sats in USD ยท $85/h ร— 37.5 h
Structure # Heading ยท // comment ยท label: 42 (text before a colon is ignored)

A line Reckon can't make sense of shows no answer, never a wrong one.

Keyboard shortcuts

Shortcut Action
โŒ˜/Ctrl K Command palette: every action, plus jump to any note
โŒ˜/Ctrl โ‡ง C Copy the answer on the current line
โŒ˜/Ctrl / Comment or uncomment lines
โŒ˜/Ctrl F Find and replace
Tab Accept an autocomplete suggestion (Ctrl Space to ask for one)
? Show all shortcuts (also the keyboard button in the notes list)

Your data

  • Notes are stored in your browser (IndexedDB). There are no accounts, no servers and no analytics.
  • The only network requests fetch exchange rates (open.er-api.com, falling back to Frankfurter; CoinGecko only if a note mentions crypto). They never include your notes, and you can turn them off in Settings.
  • Clearing site data deletes your notes, so use Export all notes (sidebar footer) for a backup.
  • A share link holds the whole note in the part of the URL after #, which browsers never send to a server.

Development

Requires Node 22+.

npm install
npm run dev          # http://localhost:5173/reckon/
npm test             # unit and golden tests (Vitest)
npm run test:e2e     # browser tests (Playwright, desktop and mobile)
npm run lint && npm run typecheck
npm run screenshots  # regenerate the README screenshots
node scripts/smoke-engine.mjs  # check dist/engine.js after a build

Every push to main runs CI and deploys to GitHub Pages.

  • CHANGELOG.md lists what changed in each version.
  • PLAN.md has the product spec, full syntax reference and roadmap.
  • AGENTS.md covers project structure, conventions and how-to recipes (adding a unit, a function, or new syntax).

Built with TypeScript, Vite, CodeMirror 6, decimal.js, Temporal (with temporal-polyfill), IndexedDB (via idb) and vite-plugin-pwa. Exchange rates come from ExchangeRate-API, Frankfurter and CoinGecko.

How Reckon compares

Reckon builds on ideas from these notepad calculators. Details come from each project's site or repo as of October 2026. "See site" means we didn't confirm the detail.

App Platforms Open source Price Ideas Reckon borrows
Reckon Any browser; installable PWA โœ… MIT Free Works offline, stores everything locally, shares notes by link
Numi macOS, Windows, Linux CLI, Alfred CLI only (repo) See site Natural phrases ($20 in euro - 5% discount), # headers, prev/sum/avg, CSS units, JS extensions
numbr Web, Chrome extension โœ… (repo) Free TypeScript parser/evaluator split, share by URL, k/M suffixes, ignores surrounding text
Soulver macOS, iOS, iPadOS โŒ Paid Live line references, subtotals and totals, multi-word variables, percentage phrasing, calendar math
Parsify macOS, Windows, web โŒ Free (5 lines) or โ‚ฌ30 one-time Over 200 currencies with hourly rates, time zones, plugins, theming
Notes Calculator Mac, Windows, Linux, iOS, Android, web โŒ One free note; lifetime purchase for more Large-number shorthand, hex/binary, conditionals, offline-first
Antinote macOS โŒ See site Scratchpad feel, sum/average/count, reactive variables, local-only privacy
Calcator macOS, Windows, Linux See site Free Variable autocomplete, multi-cursor editing, number-format settings, tabs
Ganaka macOS 14+ โœ… Free $1/$last line refs, min/max/count, Unicode ร— รท โˆ’, tabbed workspaces
Figr See site See site See site The minimal notepad-calculator framing

Thanks to all of them for the inspiration. The project plan has a longer breakdown, including what Reckon avoids.

License

Reckon is released under the MIT License. ยฉ 2026 Sam Parmar.

About

๐Ÿ“ A notepad that does the math. Natural-language calculator for units, currencies, percentages and variables. Free, open source, offline-first PWA; notes stay in your browser.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages