An open API service indexing awesome lists of open source software.

https://github.com/ghiftee/math-magician-app

Math Magician is a website built with ReactJs for all lovers of Mathematics
https://github.com/ghiftee/math-magician-app

react reactjs

Last synced: 29 days ago
JSON representation

Math Magician is a website built with ReactJs for all lovers of Mathematics

Awesome Lists containing this project

README

          

![](https://camo.githubusercontent.com/8a4ae3fb98faf74ddf78a6677ceaa6e8872f7f340f569b7c5e1aa9bcc4061d95/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6963726f76657273652d626c756576696f6c6574)

# Math Magician App

> This project is a calculator app built using React

![screenshot](src/images/Homepage.png)
![screenshot](src/images/Calcultor.png)
![screenshot](src/images/Quotes.png)

## Live Demo

- [Netlify](https://math-magician.netlify.app/)
- [Heroku](https://math-magicians-app.herokuapp.com/)

## Milestone 1: Setup
- In this milestone, I created a new React App using CRA.
- To get started with CRA, see more information below:

#### Getting Started with Create React App

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

#### Available Scripts

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 the browser.

The page will reload if you make edits.\
You will also see any lint errors in the console.

#### `npm test`

Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

#### `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.

### Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

## Milestone 2: Components
- Delete all the boilerplate from CRA (text, images, styles)
- Create a directory called components
- Create Calculator file with a React component that matches the given UI

## Milestone 3: Events
- Create logic directory
- Copy the files calculate.js and operate.js into a logic directory
- Import the files in previously created Calculator component
- Implement event handlers needed to use the math logic from calculate.js and operate.js
- Practice using state and lift state up

## Milestone 4: Refactor with hooks
- Refactor Calculator component from a class based component to a functional component with hooks.

## Milestone 5: Full Website
- Create a website consisting of 3 pages: Home, Calculator, and Quote matching the given wireframe
- Add styles using React basic styling
- Create a Route for each page
- Use Route Router to make the route for each page work

## Milestone 6: Tests
- Set up React testing library
- Write unit tests for operate.js and calculate.js using Jest
- Create unit tests for components using Jest Snapshots and React Testing Library

## Built With
- React, Bootstrap, Webpack, Javascript, React testing library, Babel and Jest

## Author
👤 **Gift Uwhubetine**

- GitHub: [@githubhandle](https://github.com/ghiftee)
- Twitter: [@twitterhandle](https://twitter.com/i_ghiftee)
- LinkedIn: [LinkedIn](https://linkedin.com/in/giftuwhubetine)

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](../../issues/).

## Show your support

Give a ⭐️ if you like this project!

## 📝 License

This project is [MIT](./MIT.md) licensed.