Axiom keeps every result you compute so you never have to retype an expression you already evaluated. Tap any history entry to recall it; search, filter, or annotate entries with notes. Four modes share one window — Basic, Scientific, Programmer, and Conversion — and your data never leaves the device.
Download the latest release from Releases and pick whichever format fits your distro:
| Format | Distro | Install |
|---|---|---|
.deb |
Debian, Ubuntu, Pop!_OS, Mint | sudo apt install ./axiom_X.Y.Z_amd64.deb |
.rpm |
Fedora, RHEL, openSUSE | sudo rpm -i axiom-X.Y.Z-1.x86_64.rpm |
.AppImage |
Any glibc distro | chmod +x axiom-*.AppImage && ./axiom-*.AppImage |
.tar.gz |
Manual install | tar -xzf axiom-linux-x64-*.tar.gz && ./scripts/install.sh |
Flathub submission is in progress. Once live:
flatpak install flathub io.github.skipper_116.axiom.
Download axiom-windows-x64-vX.Y.Z.zip from Releases, extract anywhere, and run calc.exe.
winget submission is in progress. Once live:
winget install Skipper116.Axiom.
brew install --cask axiomOr download Axiom-X.Y.Z.dmg from Releases and drag the app into /Applications.
macOS builds are currently unsigned (no Apple Developer Program). Direct DMG downloads will trigger a Gatekeeper warning the first time — right-click the app → Open to bypass it. Homebrew Cask installs handle this automatically.
- Basic mode — arithmetic with percentage, sign toggle, parentheses, and full BODMAS precedence.
- Scientific mode — trig, logs, powers, factorials, π and e, with toggleable degrees / radians.
- Programmer mode — 64-bit integer arithmetic, bitwise operators (AND, OR, XOR, NOT, MOD, shifts), and live multi-base display across decimal, hex, octal, and binary.
- Conversion mode — length, mass, temperature, area, volume, speed, time, and data, with live two-way conversion.
- Persistent history — every result is saved with timestamp, mode, and editable notes. Search and filter by mode; one-tap recall returns you to the mode the entry was created in.
- Light and dark themes — system-follow or manual.
- Keyboard-friendly — every operator and digit is bound; ESC clears, Enter equals.
- First-run tour — interactive coach marks. Replayable any time from Help.
Axiom is local-only. No telemetry, no analytics, no cloud, no accounts. See PRIVACY.md for details and the planned policy for any future opt-in collection.
Requirements: Flutter 3.38+ (stable channel), clang, cmake, ninja-build, libgtk-3-dev, libgdk-pixbuf2.0-dev, lld (Linux); MSVC build tools (Windows).
git clone git@github.com:Skipper-116/axiom.git
cd axiom
flutter pub get
flutter run -d linux # or: flutter run -d windows / macosRun the test suite:
flutter testReleases are tag-driven. Pushing a vX.Y.Z tag triggers .github/workflows/release.yml, which builds Linux + Windows artifacts, attaches them to a draft GitHub release, and generates a winget-pkgs manifest pack as an asset.
To package locally (requires fpm and appimagetool on PATH):
flutter build linux --release
VERSION=1.0.0 tool/package-linux.sh # output goes to dist/CI doesn't build macOS (we don't pay for the runner). Run this on a MacBook after the CI tag has produced the Linux + Windows assets:
git pull --tags
VERSION=1.2.3 tool/package-macos.sh
# → dist/Axiom-1.2.3.dmg + sha256 printed to stdout
# 1. Attach the DMG to the v1.2.3 GitHub release manually.
# 2. Generate the Homebrew Cask for the new version + sha:
VERSION=1.2.3 SHA256=<paste> tool/generate-cask.sh
# → dist/homebrew/Casks/a/axiom.rbBuilds are unsigned (no Apple Developer Program). DMG users will hit a Gatekeeper warning; Homebrew Cask users won't because Cask strips the quarantine xattr during install.
- Flathub — see
flatpak/README.md. - winget — each release auto-generates a
axiom-winget-manifest-vX.Y.Z.tar.gzasset. Forkmicrosoft/winget-pkgs, extract the tarball into the repo root (expands tomanifests/s/Skipper116/Axiom/X.Y.Z/), commit, and open a PR. - Homebrew Cask — fork
Homebrew/homebrew-cask, copy the generateddist/homebrew/Casks/a/axiom.rbinto the fork atCasks/a/axiom.rb, commit, and open a PR. Their CI runsbrew audit --newand a sandboxed install/uninstall cycle.
Contributions are welcome. Read CONTRIBUTING.md before opening a pull request, and the Code of Conduct before your first interaction.
Found a security issue? See SECURITY.md for the disclosure process.
MIT — see LICENSE. Made by Roy Chanunkha.
