Skip to content

Calculator is an android app that simplifies all mathematical needs from basic to complex functions, including EMI calculations

License

Notifications You must be signed in to change notification settings

yassineAbou/Calculator

Repository files navigation

Calculator

Calculator

Kotlin version 1.8.21 Gradle version 8.0.2 Android Studio Flamingo Android min version 7

This app simplifies all the mathematical needs from basic to complex functions. It allows the user to save and reference his previous calculations at any time. Plus, it can easily handle EMI calculations, compare results, and share them with other apps

Get it on Google Play

Screenshots

Architecture

The architecture of this application relies and complies with the following points below:

Package Structure

com.yassineabou.calculator  # Root Package
├── data                    # For handling all data operations
│   ├── local               # For handling data on a local level
│   ├── model               # Contains data classes/structures
│   └── repository          # For accessing and managing data
|  
├── di                      # Dependency Injection: Contains the dependency injection setup
│  
├── ui                      # UI Layer: Activities, Fragments, ViewModels
│   ├── calculator          # Contains logic and UI for the calculator
│   ├── emi                 # Contains logic and UI for the EMI calculator
│   └── MainActivity        # The main activity which hosts the other UI elements
|  
├── utils                   # Contains utility classes and Kotlin extensions
└── CalculatorApplication   # The application class


Built With 🧰

Contribution

We welcome contributions to our project! Please follow these guidelines when submitting changes:

  • Report bugs and feature requests by creating an issue on our GitHub repository.
  • Contribute code changes by forking the repository and creating a new branch.
  • Ensure your code follows our coding conventions.
  • Improve our documentation by submitting changes as a pull request.

Thank you for your interest in contributing to our project!

License

Copyright 2023 Yassine Abou 
  
Licensed under the Apache License, Version 2.0 (the "License");  
you may not use this file except in compliance with the License.  
You may obtain a copy of the License at  
  
    http://www.apache.org/licenses/LICENSE-2.0  
  
Unless required by applicable law or agreed to in writing, software  
distributed under the License is distributed on an "AS IS" BASIS,  
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
See the License for the specific language governing permissions and  
limitations under the License.