Skip to content

well-designed Calculator App with theme-mode feature built with React Native Expo & TypeScript ♾️

License

Notifications You must be signed in to change notification settings

ladunjexa/reactnative-calculator

Repository files navigation

Project Banner Project Banner

Calculator App

Minimalistic Calculator Application with beautiful UI and Theme-Mode feature

contributors last update forks stars open issues license


📔 Table of Contents

🌟 About the Project


Basic and elegant Cross-Platform Calculator App with beautiful and minimalistic User-Interface include Theme-Mode feature (Dark/Light) - built with React Native & TypeScript

‼️ Folder Structure

Here is the folder structure of Calculator-App.

Calculator-App/
|- src/
  |-- components/
  |-- context/
  |-- styles/
|- App.tsx

Now, lets dive into the src folder.

components

Button.tsx - MyKeyboard.tsx

Button.tsx - Implementation of Button component used for numbers, operations and etc.

MyKeyboard.tsx - Implementation of calculator keyboard and functionality using React Hooks.

context

ThemeContext.tsx

Context lets components pass information deep down without explicity passing props. ThemeContext call [createContext] outside any component to create Theme-Mode context, initialize with 'light' value.

styles

constants.ts - Contain only one constant object which holds hexadecimal code of colors used by app.

theme.tsx - Impelmentation of a global theme by creating StyleSheet style for buttons and keyboard ui.


👾 Tech Stack

React Native TypeScript Expo

(back to top)

🧰 Getting Started

⚙️ Installation

Step 1:

Download or clone this repo by using the link below:

 https://github.com/ladunjexa/Calculator-App

Step 2:

As a standard practice of React Native projects for managing packages it is prefer to use Yarn, but you can also use NPM. therefore, at the root folder, execute the following command in console to get the required dependencies:

  yarn

Step 3:

At the root folder execute the following command in console to get start the application

  expo start

🏃 Run Locally

Step 1:

At the main folder execute the following command in console to get the required dependencies:

  yarn

Step 2:

At the root folder execute the following command in console to get start the application

  expo start

(back to top)

👋 Contributing

Contributions are always welcome!

See contributing.md for ways to get started.

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

⚠️ License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

🤝 Contact

Liron Abutbul - @lironabutbul6 - @ladunjexa

Project Link: https://github.com/ladunjexa/Calculator-App

(back to top)

💎 Acknowledgements

This section used to mention useful resources and libraries that used in Calculator App

(back to top)

About

well-designed Calculator App with theme-mode feature built with React Native Expo & TypeScript ♾️

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published