🧮 Provides simple and advanced mathematical functions in a beautifully designed UI.

Overview

Calculator 🧮 Android App

Android Kotlin

🔗 Download the App

🤔 What is this App

✍️ This will basically provide simple and advanced mathematical functions in a beautifully designed app.

Project Admin 🤵

                   

Projects Contributors

Thanks goes to these wonderful people ❤️



Screenshots 📸

Calculator Calculator Calculator
Calculator Calculator Calculator
Calculator

📜 App Description

Calculator provides simple and advanced mathematical functions in a beautifully designed app.

• Perform basic calculations such as addition, subtraction, multiplication, and division.

🖱️ How to Contribute

If you think that you can add a new feature or want to fix a bug, we invite you to contribute to Calculator and make this project better. To start contributing, follow the below instructions:

  1. Create a folder at your desire location (usually at your desktop).

  2. Open Git Bash Here

  3. Create a Git repository.

    Run command git init

  4. Fork the project. Click on the icon in the top right to get started.

  5. Clone your forked repository of project.

git clone https://github.com/<your_username>/Calculator.git
  1. Navigate to the project directory.
cd Calculator
  1. Add a reference(remote) to the original repository.
git remote add upstream https://github.com/AyushAgnihotri2025/Calculator.git
  1. Check the remotes for this repository.
git remote -v
  1. Always take a pull from the upstream repository to your main branch to keep it updated as per the main project repository.
git pull upstream main
  1. Create a new branch(prefer a branch name that relates to your assigned issue).
git checkout -b <YOUR_BRANCH_NAME>
  1. Perform your desired changes to the code base.

  2. Check your changes.

git status
git  diff
  1. Stage your changes.
git add . <\files_that_you_made_changes>
  1. Commit your changes.
git commit -m "Commit Message"
  1. Push the committed changes in your feature branch to your remote repository.
git push -u origin <your_branch_name>
  1. To create a pull request, click on compare and pull requests.

  2. Add an appropriate title and description to your PR explaining your changes.

  3. Click on Create pull request.

Congratulations 🎉 , you have made a PR to the Calculator. Wait for your submission to be accepted and your PR to be merged by a maintainer.

🫴 How to Do Your First Pull Request?

(I am providing some Resource from where you can Learn)

  1. Learn from Video
  2. Open Source Guide

👩🏽‍💻 Contributing

  • Contributions make the open source community such an amazing place to learn, inspire, and create.
  • Any contributions you make are greatly appreciated.
  • Check out our contribution guidelines for more information.

Want to contribute?

Code of Conduct

🙏🏽 Support

This project needs a star️ from you. Don't forget to leave a star Follow my Github for content


© Ayush Agnihotri 2022
All Rights Reserved
Comments
  • Migrate from toasts to Popup

    Migrate from toasts to Popup

    What happened?

    1. App get crashed on some Mathematical Exceptions like 0/0 etc.
    2. And also the calculations whose answer overflows the text size limit of 8 in that cases the answers should be trimmed and displayed.

    Reproduction steps

    Steps to reproduce the behavior:
    
    1. Open App
    2. Try to solve 0/0
    3. App gets crashed
    

    Expected behavior

    It should show Error on Screen or a Toast should be shown displaying Can't divide by zero.

    Screenshots

    No response

    Version

    1.1.0 (Default)

    Version (If not available above)

    No response

    What devices are you seeing the problem on?

    Mobile, Tablet

    Device Name, Android Version and Screen Size

    All devices

    Additional context

    No response

    Code of Conduct

    • [X] I agree to follow this project's Code of Conduct
    bug kwoc'22 
    opened by AyushAgnihotri2025 8
  • Dark Mode feature.

    Dark Mode feature.

    Is your feature request related to a problem? Please describe.

    A option for Dark Mode has to be added in the app. It will make it amazing.

    Describe the solution you'd like

    No response

    Describe alternatives you've considered

    No response

    Additional context

    No response

    Code of Conduct

    • [X] I agree to follow this project's Code of Conduct
    enhancement kwoc'22 
    opened by AyushAgnihotri2025 5
  • Dark mode toggle switch gets reset

    Dark mode toggle switch gets reset

    What happened?

    After turning the dark mode on when the dialog is opened again to switch to light mode the toggle is in off state instead being in on state. The toggle has to be switched on and then switched off to return back to light mode.

    Reproduction steps

    Steps to reproduce the behavior:
    
    1. Go to 'Menu' on right top corner
    2. Click on 'Preferences'
    3. Toggle the Switch for Dark Mode
    5. Repeat the steps 1 and 2
    4. See error - 'The toggle switch is in Off state'
    5. Toggle the Switch back to on state - nothing happens
    6. Toggle the Switch back to off state - App gets back to light mode
    

    Expected behavior

    On switching to Dark Mode the toggle switch must be in on state until it is switched back again for the light mode. Instead the toggle gets resets to off state after changing the mode

    Screenshots

    No response

    Version

    1.1.0 (Default)

    Version (If not available above)

    v1.1.0

    What devices are you seeing the problem on?

    Mobile, Tablet

    Device Name, Android Version and Screen Size

    Lenovo

    Additional context

    No response

    Code of Conduct

    • [X] I agree to follow this project's Code of Conduct
    bug 
    opened by amaan-lari 4
  • Add on click satisfactory sound on functional keys

    Add on click satisfactory sound on functional keys

    This is the PR of issue #8

    Changes proposed

    ✅ Add sound for satisfaction 📳 ✅ Change vibration level to feel good with added sound 🔊

    Check List (Check all the applicable boxes)

    • ✅ My code follows the code style of this project.
    • ✅ All new and existing tests passed.
    • ✅ This PR does not contain plagiarized content.
    • ✅ The title of my pull request is a short description of the requested changes.

    Screenshots

    .

    Note :

    @AyushAgnihotri2025 This sound is only used for the buttons shown in the images. If you want me to add this sound to the operator and numeric buttons as well, let me know, and I'll do the same.

    kwoc'22 
    opened by Suryansh1720001 4
  • Add options for Scientific Calculations.

    Add options for Scientific Calculations.

    Is your feature request related to a problem? Please describe.

    Options for Scientific Calculations has to be added in the Calculator.

    Describe the solution you'd like

    No response

    Describe alternatives you've considered

    No response

    Additional context

    No response

    Code of Conduct

    • [X] I agree to follow this project's Code of Conduct
    enhancement kwoc'22 
    opened by AyushAgnihotri2025 3
  • Merge pull request from ashupandey1620/master

    Merge pull request from ashupandey1620/master

    Look Enhancement

    Fixes Issue

    Changes proposed

    Check List (Check all the applicable boxes)

    • [x] My code follows the code style of this project.
    • [x] All new and existing tests passed.
    • [x] This PR does not contain plagiarized content.
    • [x] The title of my pull request is a short description of the requested changes.

    Screenshots

    Screenshot_1673024296

    Note to reviewers

    kwoc'22 
    opened by ashupandey1620 2
  • Added Manual Toggle button to switch dark mode

    Added Manual Toggle button to switch dark mode

    This is the PR of the issue https://github.com/AyushAgnihotri2025/Calculator/issues/10

    Changes proposed ✅Added Manua(Toggle Buttom)l + System Wide Dark Mode Support.

    Check List (Check all the applicable boxes) ✅ My code follows the code style of this project. ✅ All new and existing tests passed. ✅ This PR does not contain plagiarized content. ✅ The title of my pull request is a short description of the requested changes. Sc SS2 reenshots

    SS$ SS5 SS1 SS6 kwoc'22 
    opened by Interstellar07 2
  • Added System-Wide Dark Mode Support

    Added System-Wide Dark Mode Support

    This is the PR of the issue https://github.com/AyushAgnihotri2025/Calculator/issues/10

    Changes proposed ✅Added System-Wide Dark Mode Support.

    Check List (Check all the applicable boxes) ✅ My code follows the code style of this project. ✅ All new and existing tests passed. ✅ This PR does not contain plagiarized content. ✅ The title of my pull request is a short description of the requested changes. Screenshots . SS2 SS1

    SS3
    opened by Interstellar07 2
  • Add soft sound when click on functionalities buttons

    Add soft sound when click on functionalities buttons

    Is your feature request related to a problem? Please describe.

    I will add a soft sound that fell satisfaction after clicking the functionalities button. Kindly assign it to me.

    enhancement kwoc'22 
    opened by Suryansh1720001 2
  • Slight Vibration on click the button

    Slight Vibration on click the button

    Hello @AyushAgnihotri2025 , I want to add the vibration effect to this calculator application. So that, users feel satisfaction with button clicks. Please Assign this issue to me. Thank you.

    enhancement kwoc'22 
    opened by Suryansh1720001 2
  • Main Screen UI modified and Minor changes in MainActivity.kt

    Main Screen UI modified and Minor changes in MainActivity.kt

    Modified MainActivity.kt Code Warnings Solved

    Changes proposed

    Main Screen UI Modified Separate Style for Operators and Numeric Buttons Minor Changes : Buttons font size reduce to 32sp Created functions for intents in MainActivity.kt Simplify MainActivity code Removed some warnings and fixed typos.

    Check List (Check all the applicable boxes)

    • [x] My code follows the code style of this project.
    • [x] All new and existing tests passed.
    • [x] This PR does not contain plagiarized content.
    • [x] The title of my pull request is a short description of the requested changes.

    Screenshots

    Calculator

    Note to reviewers

    kwoc'22 
    opened by Abhishek-5455 2
  • Look Enhancement

    Look Enhancement

    Is your feature request related to a problem? Please describe.

    It's look has to be more enhanced.

    Describe the solution you'd like

    No response

    Describe alternatives you've considered

    No response

    Additional context

    No response

    Code of Conduct

    • [X] I agree to follow this project's Code of Conduct
    enhancement IWoC'23 
    opened by AyushAgnihotri2025 6
Releases(v1.1.0)
Owner
Ayush Agnihotri
Experience is the name everyone should give to their mistakes. Building @Atishir
Ayush Agnihotri
Code for the Advanced Android Kotlin Testing Codelab 5.1-5.3

TO-DO Notes - Code for 5.1-5.3 Testing Codelab Code for the Advanced Android Kotlin Testing Codelab 5.1-5.3 Introduction TO-DO Notes is an app where y

Jorge M 1 Jun 7, 2022
MI Pad 2 tablet advanced boot options

LatteGO MI Pad 2 tablet advanced boot options Features Hidden target device checker Simple GUI Reboot options Shutdown Recovery Fastboot DNX Reboot Sl

null 4 Oct 26, 2022
An advanced environment variable parsing library for Kotlin.

EnvSchema An advanced environment variable parsing library for Kotlin. Features Supported features Parsing of objects Parsing of nested objects Custom

Cody 1 Apr 12, 2022
AGStateMachineBuilder - a library for easy creation of state machines using advanced concepts of kotlin

This is a library for easy creation of state machines using advanced concepts of kotlin. As of 2/15/2022, this library only works in kotlin, but will be expanded to work in Java later (whenever I get bored enough to rewrite an entire code structure in java :/ )

Sanjay Mohan 1 Feb 19, 2022
An annotation processor library that automatically creates Hilt's `@Binds` functions and modules.

HiltBinder An annotation processor library that automatically creates Hilt's @Binds functions and modules. If you think this library is useful, please

SangMin Park 5 Sep 19, 2022
Learn how to make an app designed for single-screen devices shine when running on foldable and dual-screen devices

dcberlin21-workshop Make your app shine om foldable devices with the samples we have here. Related links SDK open-source code SDK samples (Kotlin) App

Cesar Valiente 3 Oct 26, 2021
A commerce service designed with MSA and DDD.

A commerce service designed with MSA and DDD.

null 48 Sep 7, 2022
Kotlin extensions, BindingAdapters, Composable functions for Android CameraX

Setup dependencies { implementation "com.github.skgmn:cameraxx:0.6.0" } Features CameraXX provides extensions methods for CameraX to use functions

null 12 Aug 9, 2022
Helper functions for making Approvals-Java more Kotlin friendly

Approvals-Kt Helper functions for making Approvals-Java more Kotlin-friendly Usage Verify using Approvals-Kt import com.github.greghynds.approvals.Kot

Greg Hynds 2 Oct 18, 2021
Esito ambition is to be your return type for suspending functions.

Esito ambition is to be your return type for suspending functions.

null 58 Oct 21, 2022
A ksp library to automatically generate navigation functions for jetpack compose.

Compose/Navigation/Generator ⚠️ This library is still under development and not considered stable! Content Introduction Usage Example: Single destinat

Steffen Eckardt 4 Sep 13, 2022
An Intentionally designed Vulnerable Android Application built in Kotlin.

?? InsecureShop InsecureShop is an Android application that is designed to be intentionally vulnerable. The aim of creating this app is to teach devel

Optiv Security 212 Dec 24, 2022
Climby is designed to put climbers in contact with each other

Climby Con el nuevo 'BOOM' de la escalada, se vio la necesidad de crear un app donde los usuarios puedan publicar o unirse a viajes, sin la necesidad

Javier Gómez 1 Jan 10, 2022
Go Outside is an augmented reality app designed for our team's Software Engineering UI/UX class

Go Outside Go Outside is an augmented reality app designed for our team's Software Engineering UI/UX class. This app serves as a PROTOTYPE to demonstr

Kris 4 Jul 28, 2022
PenPath class is designed to be used to draw paths with variable thickness

PenPath class is designed to be used to draw paths with variable thickness. It creates an object of android.graphics.Path and should be drawn with Paint.Style.FILL type paint.

null 2 Jun 5, 2022
Candroid Browser is a replacement web browser for Candroid. It is designed to replace the AOSP browser, but not Google Chrome. It will be based on a privacy friendly WebKit engine fork.

Candroid Browser Candroid Browser is a replacement web browser for Candroid. It is designed to replace the AOSP browser, but not Google Chrome. It wil

Sean P. Myrick V19.1.7.2 3 Dec 22, 2022
🔥The Android Startup library provides a straightforward, performant way to initialize components at the application startup. Both library developers and app developers can use Android Startup to streamline startup sequences and explicitly set the order of initialization.

??The Android Startup library provides a straightforward, performant way to initialize components at the application startup. Both library developers and app developers can use Android Startup to streamline startup sequences and explicitly set the order of initialization.

Rouse 1.3k Dec 30, 2022
This prototype app provides a list of events to be held under an organization (school, college, club, etc.) and the users can manually set event reminders at their scheduled time so that they do not miss an event.

E-CELL NITS Sample App This prototype app provides a list of events to be held under E-Cell NIT Silchar (for example, Srijan 2.0) and the users can ma

Ritam Nath 1 Nov 7, 2021
FlowExt is a Kotlin Multiplatform library, that provides many operators and extensions to Kotlin Coroutines Flow

FlowExt | Kotlinx Coroutines Flow Extensions | Kotlinx Coroutines Flow Extensions. Extensions to the Kotlin Flow library | kotlin-flow-extensions | Coroutines Flow Extensions | Kotlin Flow extensions | kotlin flow extensions | Flow extensions

Petrus Nguyễn Thái Học 151 Jan 1, 2023