Multi-Function Calculator App
Overview
This Flutter application is a comprehensive calculator that includes standard, scientific, programmer, and date calculation functionalities. It's designed to provide a wide range of calculation capabilities in a single, user-friendly app.
Features
Standard Calculator
- Basic arithmetic operations (addition, subtraction, multiplication, division)
- Percentage calculations
- Clear and delete functions
Scientific Calculator
- Trigonometric functions (sin, cos, tan)
- Logarithmic functions (log, ln)
- Exponential functions
- Square root and power functions
- Constants (π, e)
- Degree/Radian mode toggle
Programmer Calculator
- Base conversions (Hexadecimal, Decimal, Octal, Binary)
- Bitwise operations (AND, OR, XOR, NOT)
- Shift operations (Left Shift, Right Shift)
- Support for hexadecimal input
Date Calculator
- Calculate the difference between two dates
- Add or subtract days from a given date
- Find the day of the week for a specific date
Getting Started
Prerequisites
- Flutter SDK (version 3.16.1 or higher)
- Dart (version 3.0.0 or higher)
Installation
- Clone the repository:
git clone https://github.com/Qharny/calculator.git
- Navigate to the project directory:
cd calculator
- Get the dependencies:
flutter pub get
Usage
To run the app on a connected device or emulator:
flutter run
Structure
The project is structured as follows:
-
lib/
: Contains the main Dart code for the app
-
screens/
: Individual calculator screen implementations
-
widgets/
: Reusable UI components
-
utils/
: Utility functions and constants
-
assets/
: Contains any static assets used in the app
Contributing
Contributions to improve the calculator app are welcome. Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/AmazingFeature
)
- Make your changes
- Commit your changes (
git commit -m 'Add some AmazingFeature'
)
- Push to the branch (
git push origin feature/AmazingFeature
)
- Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
Acknowledgments
- Flutter team for the excellent framework
- Contributors and open-source projects that inspired this calculator app