Skip to content

shawkyebrahim2514/Muslim-Website-using-ReactJS

Repository files navigation

Muslim Website

This is an Islamic website project developed using ReactJS. It is a responsive website that can be used on all devices. The website serves as a comprehensive online Muslim resource like (Holy Quran, Hijri Calendar, and Adhkar)

Getting Started

Prerequisites

To run this project locally, you need to have the following prerequisites installed:

  • Node.js (v14 or later)
  • NPM (Node Package Manager)

Installation

  1. Clone the repository:

    git clone https://github.com/shawkyebrahim2514/Muslim-Website-using-ReactJS.git
  2. Install dependencies:

     npm install

Usage

  1. Start the development server:
 npm start
  1. Open your web browser and navigate to http://localhost:3000 to access this Muslim website.

Technologies and Techniques Used

  • ReactJS
  • React Hooks (useEffect, useState, useContext, useReducer, useParams, useNavigate, useRef)
  • memoization using memo higher order component, useMemo, and useCallback
  • React Router
  • React Context API with useReducer and Immer
  • React Material UI
  • React custom hooks
  • Lazy loading
  • Separation of concerns
  • uuid package to generate unique keys

Contributing

We welcome contributions to this project! To get started, please follow these steps:

  1. Fork this repository to your own GitHub account and then clone it to your local device.

  2. Install the necessary dependencies by running the following command:

npm install
  1. Create a new branch for your feature or bug fix:
git checkout -b feature/your-feature-name
  1. Make your changes and commit them with a descriptive commit message:
git commit -m "Add your commit message here"
  1. Push your changes to your forked repository:
git push origin feature/your-feature-name
  1. Open a pull request from your forked repository to this repository, describing your changes in detail.

We will review your pull request and provide feedback as necessary. Thank you for contributing to this project!