Skip to content

elcalc/elcalc

Repository files navigation

elcalc logo

elcalc

Cross-platform calculator, built with Electron :electron:

Build Status Code Style Downloads Mentioned in Awesome Calculators


Highlights

  • Supports basic math operations, as well as some scientific functions, such as power, square root, natural logarithm and more!
  • Supports common math constants: π (pi) and e.
  • Blazing fast calculation powered by lazy-loaded WebAssembly ⚡
  • Special keyboard support.

Install

Check out the latest release.


Dev

Screenshot

Prerequisites

Usage

# Install dependencies

 $ npm install

# Run the app

 $ npm start
 
# Run lint & tests

 $ npm test
 
# Build 

 $ npm run dist

File Tree

├── build                 			    # Contains configuration files for Webpack etc.
│   └── start.js            		    # Configuration for `npm start` command
│   └── webpack.app.config.js       # Webpack app config (entry point, output)
│   └── webpack.base.config.js      # Webpack base config (plugins, loaders)
├── crate                			      # Contains Rust code, which will be compiled to WASM.
│   ├── src                			
│   │	└── lib.rs            		    # Main Rust file
│   └── Cargo.lock     				      # Cargo lock file
│   └── Cargo.toml      			      # Cargo configuration file
├── resources                 		  # Contains icons for different operating systems
│   ├── icons                			
│   │	└── 512x512.png               # Icon for other operating systems (like Linux)
│   └── icon.icns       			      # Icon for macOS
│   └── icon.ico      				      # Icon for Windows
├── src                				      # Main application folder
│   ├── stylesheets                			
│   │	└── main.css             	    # Styles
│   └── app.html          			    # Main HTML file
│   └── app.js       				        # Main JS file
│   └── background.js     			    # Electron configuration
├── test                			      # Tests folder
│   └── spec.js       				      # Spectron tests
├── .npmrc                			    # npm config
├── .stylelintrc          			    # stylelint config
├── .travis.yml           			    # Travis CI config
├── babel.config.js       			    # Babel config

Keyboard Support

Key Description
1, 2, 3, 4, 5, 6, 7, 8, 9, 0 Type numbers
+, -, * or x, /, ., ^, e Type symbols
Enter or Return Evaluate equation
Backspace or Delete Clear calculator output

License

MIT