The Windows Calculator app is a modern Windows app written in C++ and C# that ships pre-installed with Windows. The app provides standard, scientific, and programmer calculator functionality, as well as a set of converters between various units of measurement and currencies.
Calculator ships regularly with new features and bug fixes. You can get the latest version of Calculator in the Microsoft Store.
Your computer must be running Windows 11, build 22000 or newer.
Install the latest version of Visual Studio (the free community edition is sufficient).
Install the XAML Styler Visual Studio extension.
Get the code:
git clone https://github.com/Microsoft/calculator.git
Open src\Calculator.sln in Visual Studio to build and run the Calculator app.
For a general description of the Calculator project architecture see ApplicationArchitecture.md.
To run the UI Tests, you need to make sure that Windows Application Driver (WinAppDriver) is installed.
Want to contribute? The team encourages community feedback and contributions. Please follow our contributing guidelines.
For information regarding Windows Calculator plans and release schedule, please see the Windows Calculator Roadmap.
Adding graphing calculator functionality is on the project roadmap and we hope that this project can create a great end-user experience around graphing. To that end, the UI from the official in-box Windows Calculator is currently part of this repository, although the proprietary Microsoft-built graphing engine, which also drives graphing in Microsoft Mathematics and OneNote, is not. Community members can still be involved in the creation of the UI, however developer builds will not have graphing functionality due to the use of a mock implementation of the engine built on top of a common graphing API.
This project collects usage data and sends it to Microsoft to help improve our products and services.
Read our privacy statement to learn more.
Diagnostic data is disabled in development builds by default, and can be enabled with the
Windows Calculator includes a currency converter feature that uses mock data in developer builds. The data that Microsoft uses for the currency converter feature (e.g., in the retail version of the application) is not licensed for your use. The mock data will be clearly identifiable as it references planets instead of countries, and remains static regardless of selected inputs.
Please refer to SECURITY.md.
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License.