Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nitbravoa92/math-magicians
Webapp built with ReactJS. It shows a calculator that solves basic mathematical operations and displays a famous Quote using Ninja API to inspire the users.
https://github.com/nitbravoa92/math-magicians
css3 html5 javascript jest-tests react react-hooks react-router reactjs
Last synced: 5 days ago
JSON representation
Webapp built with ReactJS. It shows a calculator that solves basic mathematical operations and displays a famous Quote using Ninja API to inspire the users.
- Host: GitHub
- URL: https://github.com/nitbravoa92/math-magicians
- Owner: NitBravoA92
- License: mit
- Created: 2023-07-03T18:49:58.000Z (over 1 year ago)
- Default Branch: dev
- Last Pushed: 2023-08-05T20:26:39.000Z (over 1 year ago)
- Last Synced: 2025-01-13T14:54:54.947Z (10 days ago)
- Topics: css3, html5, javascript, jest-tests, react, react-hooks, react-router, reactjs
- Language: JavaScript
- Homepage: https://math-magicians-app-z9yt.onrender.com/
- Size: 1.78 MB
- Stars: 11
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Math Magicians WebApp
# 📗 Table of Contents
- [📗 Table of Contents](#-table-of-contents)
- [Math Magicians WebApp](#math-magicians-webapp)
- [🛠 Built With ](#-built-with-)
- [Tech Stack ](#tech-stack-)
- [Key Features ](#key-features-)
- [🚀 Live Demo ](#-live-demo-)
- [💻 Getting Started ](#-getting-started-)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Build](#build)
- [👥 Authors ](#-authors-)
- [🔭 Future Features ](#-future-features-)
- [🤝 Contributing ](#-contributing-)
- [⭐️ Show your support ](#️-show-your-support-)
- [🙏 Acknowledgments ](#-acknowledgments-)
- [📝 License ](#-license-)**Math Magicians** This project consists of building a webapp with the ReactJS library, to show a calculator that solves the main mathematical operations (addition, subtraction, multiplication, division, percentages). This webapp will consist of 3 pages, which will provide information about the website, show the calculator and a series of quotes about Mathematics so that users can explore more of the world of mathematics.
Client
- **Using the ReactJS library**
- **Using the ReactJS Router library**
- **Using JSX syntax**
- **Use of semantic HTML**
- **SPA Approach**
- **Responsive Design**
- **Unit test with jest and React Testing Library**
To see the application working live, you can click on the following link that contains the demo version:
- [Math Magicians - Live Demo](https://math-magicians-app-z9yt.onrender.com/)
To get a local copy up and running, follow these steps.
### Setup
Clone this repository to your desired folder:
```sh
cd my-folder-name
git clone [email protected]:NitBravoA92/math-magicians.git
```
### Prerequisites
In order to install, modify and run this project, it is necessary to have the following applications installed:
- **Git:** to manage the project versions of source code. [You can Download Git here](https://git-scm.com/)
- **Nodejs and NPM:** to install and manage the project dependencies. [Nodejs and NPM installation guide](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
- **A code editor** like Visual Studio Code (Recommended) or any other of your preference. It is necessary to open the project and add or modify the source code. [You can Download Visual Studio Code here](https://code.visualstudio.com/)
It is also important to have at least basic knowledge about ReactJS, JSX, HTML, CSS and Javascript languages so you will be able to understand and work with the code of the project.
- [Learn the basics of HTML](https://developer.mozilla.org/en-US/docs/Web/HTML)
- [Learn the basics of CSS](https://developer.mozilla.org/en-US/docs/Web/CSS)
- [JavaScript basics](https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics)
- [Javascript Arrays](https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Array)
- [Javascript Objects](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
- [JavaScript modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules)
- [ReactJS](https://react.dev/learn)
- [JSX](https://react.dev/learn/writing-markup-with-jsx)
- [Create React App](https://github.com/facebook/create-react-app)
### Install
Install this project by running the next command into your project folder:
```sh
npm install
```
All the packages and libraries necessary for the project to work will be installed in a folder called /node_module. After this installation, the project will be ready to use.
### Usage
In the project directory, you can run:
- `npm start`
Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.
The page will reload when you make changes.\
You may also see any CSS and JS linters errors in the console running the following commands:
CSS Linter
```sh
npx stylelint "**/*.{css,scss}"
```
Javascript Linter
```sh
npx eslint "**/*.{js,jsx}"
```
### Build
- `npm run build`
Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
**Note**: Please only modify the components files like App.js, testing files like App.test.js and the CSS files. Do not modify configurations files of the project.
👤 **Nitcelis Bravo**
- GitHub: [Nitcelis Bravo](https://github.com/NitBravoA92)
- Twitter: [@softwareDevOne](https://twitter.com/softwareDevOne)
- LinkedIn: [Nitcelis Bravo Alcala](https://www.linkedin.com/in/nitcelis-bravo-alcala-b65340158)
👤 **Reza Merzaie**
- GitHub: [Reza Merzaie](https://github.com/Gh-Reza)
- LinkedIn: [Reza Merzaie](https://www.linkedin.com/in/reza-merzaie-b94368202/)
## 🔭 Future Features
- [x] **Create the UI of the Calculator component**
- [x] **Create the Calculator component basic functionality**
- [x] **Create the Home page to show the main information about the webapp**
- [x] **Create the Calculator page to show the Calculator component**
- [x] **Create the Quote page to show some Maths quotes**
- [x] **Create Unit Tests to validate the operation of the application components**
- [ ] **Improve UI design using TailwindCSS**
- [ ] **Add custom informative texts in paragraphs**
Contributions, issues, suggestions and feature requests are welcome!
Feel free to check the [issues page](../../issues/).
To do Contributions, please fork this repository, create a new branch and then create a Pull Request from your branch. You can find detailed description of this process in: [A Step by Step Guide to Making Your First GitHub Contribution by Brandon Morelli](https://codeburst.io/a-step-by-step-guide-to-making-your-first-github-contribution-5302260a2940)
If you liked this project, give me a "Star" (clicking the star button at the beginning of this page), share this repo with your developer community or make your contributions.
I would like to thank my Microverse teammates for their support. They have supported me a lot in carrying out this project, giving me suggestions, good advice and solving my code doubts.
This project is [MIT](./LICENSE) licensed.