A lightweight cross-platform calculator application built using a shared web-based interface (HTML, CSS, JavaScript), packaged into:
- 🖥 Desktop App using Electron
- 📱 Mobile App using Flutter WebView
The user interface is styled using Pico.css, a minimal and semantic CSS framework, ensuring a clean, consistent, and lightweight experience across platforms.
- Basic arithmetic operations
- Cross-platform support (Desktop & Android)
- Shared web-based UI (single logic across platforms)
- Keyboard input support (desktop)
- Responsive calculator layout
- Clean and lightweight interface
- Native-like experience on mobile (WebView + haptic feedback)
- Dark mode support (system preference)
- Single instance application
- Navigation protection
- Disabled external window creation
- Zoom disabled for consistent UI
- Secure Electron configuration
- WebView-based rendering
- Native haptic feedback integration
- Orientation locked to portrait
- Edge-to-edge UI
- System-aware status bar & navigation bar
contextIsolation: truenodeIntegration: false- Navigation blocked
- External window creation disabled
- Zoom disabled
You can download compiled versions from the Releases page.
- HTML
- CSS
- JavaScript
- Pico.css
- Electron
- Node.js
- Flutter
- WebView
calculator-app
│
├─ desktop/ # Electron (Desktop wrapper)
│ ├─ main.js
│ ├─ package.json
│ └─ app/ # Web UI (HTML, CSS, JS)
│
├─ mobile/ # Flutter (Mobile wrapper)
│ ├─ lib/
│ │ └─ main.dart
│ │
│ └─ app/ # Web UI (HTML, CSS, JS)
│
└─ README.md
Clone the repository:
git clone https://github.com/faishalkc/Calculator-App.git
cd Calculator-App
cd desktop
npm install
npm start
cd mobile
flutter pub get
flutter run
npm run build
Output:
desktop/dist/
flutter build apk --release
Output:
build/app/outputs/flutter-apk/
This project is licensed under the ISC License.