Abicus is a simple scientific calculator built on web technologies.
Abicus does not include any symbolic computation capabilities.
It is built for use in the Finnish digital matriculation examinations.
Note
The calculator was developed especially to be an example of an Abitti 2 application. The source code, the Abitti 2 container, and precompiled binaries of the calculator are made available to the public for demonstration purposes only. The matriculation examination board does not provide support for e.g. installing the precompiled binaries.
We request that any errors in the program are reported to Abitti-support ([email protected])
Clone this repository and make sure you have Node.js installed on your system. The exact version used in development can be found in the .nvmrc
file.
If you want to develop the desktop application, you will additionally need to have a Rust toolchain installed on your system. Please then also follow the Tauri set-up instructions for your system.
When Node.js is ready and this repository has been cloned, install the packages by running the following in the cloned directory:
npm install
After all the required packages have been installed, run one of the following commands to start the development server:
-
For the web-application only:
npm run dev
-
For the web-application and the desktop application:
npm run tauri dev
This project uses the Vitest testing framework for unit tests and Playwright for UI tests. After the project has been set up, to run all the tests for the project you can simply run:
npm run test
To run only the unit tests:
npm run test:unit
And to only run the UI tests:
npm run test:ui
Please see the Vitest and/or Playwright documentation for details on e.g. how to filter which tests to run etc.