Skip to content

farzanuddin/calc

Repository files navigation

Calc

A keyboard-accessible calculator built with Vue 3. Supports basic arithmetic operations, a light and dark theme, and a responsive mobile layout.

https://farzanuddin.github.io/calc

preview

Objective

This project was built as a hands-on exploration of two things: getting back up to speed with Vue after not having used it for a while, and evaluating the newly released Vite 8 — specifically how Rolldown works as its bundler under the hood. Rolldown replaces the previous Rollup-based pipeline with a Rust-native bundler, and a small but real project felt like the right way to observe its build performance and output characteristics in practice.

Features

  • Basic arithmetic — addition, subtraction, multiplication, division, and percentage
  • Chained operations — apply multiple operators in sequence without pressing equals
  • Keyboard support — full keyboard input for digits, operators, Enter, Backspace, and Escape
  • Haptic feedback — optional vibration on button press on supported mobile devices
  • Error handling — gracefully catches division by zero and malformed states

Tech Stack

Technology Version Role
Vue ^3.5.30 UI framework
Vite ^8.0.0 Build tool & dev server
Tailwind CSS v4 ^4.2.1 Utility-first CSS framework
Vitest ^4.1.0 Unit testing

Getting Started

  1. Install dependencies:

    pnpm install
  2. Start the dev server:

    pnpm dev

Releases

Packages

Contributors

Languages