A modern and stylish Stopwatch app built with React + Vite.
It features start, stop, reset, and dark/light theme toggle, with a sleek glassmorphism-inspired UI that works seamlessly across devices.
- Start, Stop, and Reset stopwatch functionality
- Dark/Light theme toggle 🌙☀️
- Millisecond precision with smooth updates
- Responsive design for desktop, tablet, and mobile
- Glassmorphism UI with gradients, blur, and shadows
- Built using React + Vite
| Light Mode | Dark Mode |
|---|---|
[Light Mode]![]() |
[Dark Mode] ![]() |
Clone the repository:
git clone https://github.com/Arsh-pixel-cmd/Stopwatch.git
cd Stopwatchnpm installStart the development server:
npm run devhttp://localhost:5173
STOP-WATCH ├── src/ # Source code │ ├── App.jsx # Root component │ ├── StopWatch.jsx # Stopwatch logic & UI │ ├── index.css # Styling (themes + glassmorphism + responsive) │ ├── main.jsx # Entry point ├── .gitignore # Git ignore file ├── eslint.config.js # ESLint configuration ├── index.html # Main HTML file ├── package-lock.json # Dependency lock file ├── package.json # Project configuration & scripts ├── README.md # Documentation ├── vite.config.js # Vite configuration
- Add Lap functionality
- Allow custom themes (neon, minimal, gradient)
- Save stopwatch state in local storage
- Add sound/vibration feedback
- Include digital + analog clock combo
By exploring this project, you will learn how to:
- Build a stopwatch in React with start/stop/reset logic
- Use React hooks (
useState,useEffect,useRef) for state and side effects - Format JavaScript Date objects for time display
- Apply glassmorphism + responsive design with modern CSS
- Structure a React + Vite project for fast development
- Fork the project
- Create a feature branch (
git checkout -b feature/newFeature) - Commit changes (
git commit -m "Added new feature") - Push & Open a PR
Licensed under the MIT License — feel free to use & modify.

