/maths-magicians

Math Magicians is a Single Page App (SPA) tailored for mathematics enthusiasts. It provides basic arithmetic calculations and a curated selection of inspiring and humorous math-related quotes.

Primary LanguageJavaScriptMIT LicenseMIT

logo100

Math Magicians

Welcome to the enchanting world of Math Magicians! Dive into the magic of numbers and fun! Prepare to be amazed as we conjure up mathematical wonders that will leave you giggling and gasping in awe. From mind-boggling calculations on our Calculator page to quotes that will tickle your funny bone on our Quote page, we've got it all! Home is where the math is, and it's full of surprises, laughter, and endless possibilities. So, fasten your seatbelts, hold on tight, and let the math magic take you on a wild and hilarious ride!


Table of Contents πŸ“—


Built With πŸ› 

Tech Stack

The Math Magicians project leverages the following technologies:

  • React Logo React JS: A popular JavaScript library for building user interfaces, particularly single-page applications where UI updates are frequent.
  • JavaScript Logo JavaScript: A versatile programming language commonly used for adding interactivity and functionality to web applications.
  • CSS3 Logo CSS3: The latest version of Cascading Style Sheets, used for styling the visual presentation of web pages.

Key Features 🏷️

Math Magicians is a Single Page App (SPA) tailored for mathematics enthusiasts. It provides the following core functionalities:

  • Perform basic arithmetic calculations with ease.
  • Explore a curated selection of inspiring and humorous math-related quotes.

Getting Started πŸ’»

Prerequisites 🧱

To successfully run and contribute to this project, make sure you have the following:

  • A Github account: To fork and collaborate on the project.
  • Node JS: Required for installing project dependencies and running the development server.
  • A web browser: You'll need a web browser to view the project output. We recommend using Microsoft Edge for the best experience.
  • An Integrated Development Environment (IDE): We suggest using Visual Studio Code as your code editor, but you can use any IDE of your choice.
  • A terminal: You'll use the terminal to run various commands during development. If you're using Visual Studio Code, it comes with an integrated terminal.

Additionally, you might want to consider the following for an enhanced development experience:

  • Git: Familiarize yourself with Git and Github if you're planning to collaborate or contribute to the project.
  • npm: Learn how to manage project dependencies using npm (Node Package Manager).

With these prerequisites in place, you'll be well-equipped to explore, run, and contribute to Math Magicians.

Setup βš™οΈ

To set up the Math Magicians project on your local machine, follow these steps:

  1. Clone this repository:
      git clone https://github.com/lily4178993/maths-magicians.git
      cd maths-magicians
  2. Set up all the environment variable.

Environment Variables

To run the Math Magicians application, you need to configure the following environment variables:

  • REACT_APP_QUOTES_URL: The API URL for fetching quotes.
  • REACT_APP_QUOTES_KEY: The API Key for accessing the quotes API. You can obtain this API key from the API Provider.
  • REACT_APP_QUOTES_CATEGORY: The category of quotes you want to retrieve (e.g., 'inspirational', 'funny', 'motivational').

Setting Up Environment Variables

Follow these steps to set up your environment variables:

  1. Create a .env file in the project's root directory.
  2. Inside the .env file, add the necessary environment variables with their corresponding values. For example:
      REACT_APP_QUOTES_URL=your-api-url-here
      REACT_APP_QUOTES_KEY=your-api-key-here
      REACT_APP_QUOTES_CATEGORY=your-quotes-category-here
    
    Replace your-api-url-here, your-api-key-here, and your-quotes-category-here with the actual values you obtained or want to use.

////////////////////

Note: Keep these API keys and sensitive information confidential and do not commit the .env file to version control.

////////////////////


Install πŸ—οΈ

Once you have cloned the repository and configured the environment variables, you can run the following command to install the project's dependencies:

  npm install

Usage πŸ“‚

To use the Math Magicians application, follow these steps:

  1. Track linter errors

    Track errors with the following command:

    • Track CSS linter errors, run:
    npx stylelint "**/*.{css,scss}" --fix
    • Track JavaScript linter errors, run:
    npx eslint "**/*.{js,jsx}" --fix
  2. Run the Development Server:

    • Open your terminal/command prompt.
    • Navigate to the project's root directory.
    • Run the following command:
        npm start

    This will start the development server.

  3. Access the Application:

    • Open your web browser.
    • Navigate to the following URL:
        http://localhost:3000

    You will now be able to interact with the Math Magicians application in your browser.

(back to top)


Author πŸ‘€

Nelly Telli

(back to top)


Future Features πŸ”­

While Math Magicians is already magical, there's always room for more enchantment! Here are two exciting future features we're considering:

  1. Interactive Math Tutorials: Introduce a new section that offers interactive math tutorials. Users can learn math concepts step-by-step through fun and engaging activities, making learning math a delightful experience.

  2. Math Challenges and Leaderboards: Create a platform for math enthusiasts to challenge each other with math problems of varying difficulty levels. Users can solve problems, earn points, and compete on leaderboards to showcase their mathematical prowess.

These upcoming features will continue to add charm and wonder to the Math Magicians world, making it an even more captivating math playground.

(back to top)


Contributing 🀝

Math Magicians welcomes contributions from the community. Whether you have suggestions, ideas, or bug reports, your input is valuable and can help make this project even better.

  • To report bugs πŸ› or request features πŸ“, please open an issue on GitHub. Be sure to provide detailed information about the issue or the feature you'd like to see.
  • If you'd like to contribute code to Math Magicians, you can fork this repository, create a new branch for your changes, and submit a pull request. Your contributions will be reviewed and merged if they align with the project's goals and standards.

Remember, even small contributions can make a big difference!

(back to top)


Show your support 🌟

Thank you for exploring Math Magicians! Your support means the world to us. If you find this project valuable and want to show your appreciation, here are some ways to do it:

  • Star the project ⭐️: If you like what you see, give Math Magicians a star on GitHub. It's a simple way to show your love for the project.
  • Fork the project 🍴 🎣: Interested in making your own version or contributing in a big way? Fork the repository and let your creativity flow.
  • Share with others πŸ—ΊοΈ: Help us spread the magic! Share Math Magicians with your friends, colleagues, and fellow math enthusiasts. The more, the merrier!

Your support fuels our enthusiasm and keeps the magic alive in Math Magicians.

(back to top)


Acknowledgments πŸ™

Math Magicians extends its heartfelt appreciation to the following individuals and organizations whose contributions and resources have enriched this project:

  • Micoverse: We're grateful for the educational opportunities provided by Microverse, which empowered us to build this project and develop our skills.
  • Icons8: A special thank you to Icons8 for generously providing the images and icons used throughout Math Magicians. Your visual assets added magic to our project.

These acknowledgments reflect the collaborative spirit and support that have fueled the creation of Math Magicians. Thank you for being a part of our journey!

(back to top)


License πŸ“

Math Magicians is open-source software licensed under the MIT.

The MIT License grants users the freedom to use, modify, and distribute this software while ensuring that the original authors are not liable for any issues arising from its use. For full details, please see the LICENSE file.

(back to top)