Awesome
fend
<a href="https://printfn.github.io/fend"><img alt="fend icon" src="https://raw.githubusercontent.com/printfn/fend/main/icon/icon.svg" width="100" /></a>
fend is an arbitrary-precision unit-aware calculator.
Unique features:
- Arbitrary-precision arithmetic using rational numbers
- Full support for complex numbers
- D&D-style dice rolls
- Variables
- Binary, octal, hexadecimal and all other bases between 2 and 36
- Keep track of units, with support for SI, US and UK customary and many historical units
- Emacs-style CLI shortcuts
- Trigonometric functions
- Lambda calculus
See the manual for more information.
Web Interface
fend is available on the web at printfn.github.io/fend.
Installation
The easiest way to install fend locally is via your package manager:
Package Manager | Command |
---|---|
Homebrew | brew install fend |
MacPorts | sudo port install fend |
AUR (Arch Linux) | yay -Syu aur/fend-bin |
AOSC OS | oma install fend |
Xbps (Void Linux) | xbps-install fend |
Nix | nix-env -iA nixpkgs.fend |
Cargo | cargo install fend |
Windows Package Manager | winget install fend |
Chocolatey | choco install fend |
Scoop | scoop install fend |
Pkgx | pkgx fend |
Alternatively, you can manually download the latest stable binaries here.
Once fend is installed, run fend
to start a REPL session:
$ fend
> 1 ft to cm
30.48 cm
>
Packages
- Homebrew
- MacPorts
- AUR (built from source)
- AUR (pre-built binary)
- xbps
- AOSC OS
- nixpkgs
- Windows Package Manager
- Chocolatey
- NPM fend-wasm package
- NPM fend-wasm-web package
- NPM fend-wasm-nodejs package
- Telegram Bot
- Pkgx
Manual
You can find the fend manual here.
Examples
> 5'10" to cm
177.8 cm
> cos (pi/4) + i * (sin (pi/4))
approx. 0.7071067811 + 0.7071067811i
> 0b1001 + 3
0b1100
> 0xffff to decimal
65535
> 100 C to F
210 °F
> temperature = 30 °C
30 °C
> temperature to °F
86 °F
> roll d20
8
> roll 4d6
17
Projects using fend
These are some projects making use of fend:
Feel free to make a pull request to add your own!
License
fend is available under the MIT license. See LICENSE.md for more information.