Kräks is a browser-based high-precision scientific calculator similar to SpeedCrunch.
The Finnish Matriculation Examination Board (YTL/MEB) decided to drop SpeedCrunch and similar calculators from the official examination system. Thus, the goal of this project no longer aims to recreate the SpeedCrunch experience on the web.
👉️ Live demo
Warning
This software is still in a fragile testing phase! Do not trust it for anything super important. Bug reports and improvement requests are welcome!
Following URL parameters are supported for changing the configuration:
view=standalone, makes the calculator usable in a regular big browser windowmode=simple, changes into "simple mode" for casual embedding purposesmode=exam, changes into "Vallu mockup mode" for the "Valintakoelaskin" replicaprefs=..., sets any preferences or options, such as following:
{
"lang": "fi", // "fi" or "en"
"isSidebarVisible": true,
"isKeypadVisible": true,
"isDegrees": false,
"shouldCleanTrigonometry": true,
"precision": 50,
"expLimit": 15,
"outputMode": "decimal"
}- Developing a general purpose scientific calculator for online use and embedding in L'Math
- Providing an "exam calc" mode, attempting to replicate the calculator functionality of yet another Finnish exam system
- React + TypeScript
- Parsing based on a "monorepo-ish" fork of expr-eval patched with Decimal.js
- ✅ All basic calculations of expr-eval with Decimal.js
- ✅ Supports both dot
.and,comma as decimal separator - ✅ Angle degree/radian modes for trigonometry
- ✅ User-defined functions and variables
- ✅ Configurable precision (decimals and exponent notation)
- ✅ Command palette
- ✅ Variable palette
- ✅ On-screen keypad
- ✅ Prefs/settings saved in localStorage
- ⏳️ Thoroughly test all built-in functions
- ⏳️ Improve trig function accuracy and rounding...
- ⏳️ More built-in functions
- ⏳️ More statistical functions
- ⏳️ More distribution functions
- ⏳️ Complex number support?
- ⏳️ Improve built-in guide
- ⏳️ "Value of selection"?
- ⏳️ Improve user experience of special modes
- ⏳️ Create an actual fork of expr-eval instead of current approach
- ❓️ Support parsing TeX expressions (e.g.
\frac{1}{2}=>1/2)
- 🚫 Any CAS-like features (e.g. derivatives, integrals, smart simplification, etc.)
- 🚫 Built-in book of formulas (as Abitti®️ has multible tables built in)
Contributions are welcome, especially if they contain improvements that help the actual users. Feel free to fork this repository and to suggest changes with pull requests. Please stay in line with the existing code style. Please also read the general goal(s) of this project higher above.
MIT
The original name "AbiCrunch" refers to "Abi", as in "Abiturientti" and "Crunch" like quickly crunching through mathematical calculations.
This project is not affiliated with or officially approved by the Finnish Matriculation Examination Board (YTL) and is not related to the the Abitti® examination system. Abitti® is a registered trademark of the Finnish Matriculation Examination board.