Skip to content

Commit

Permalink
Create README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
dpvasani authored Aug 28, 2024
1 parent 10faaab commit c153e04
Showing 1 changed file with 134 additions and 0 deletions.
134 changes: 134 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
# React-Intermediate

Welcome to the **React-Intermediate** repository! This repository is a collection of intermediate-level React projects and exercises, designed to help developers deepen their understanding of React concepts, improve their coding skills, and explore advanced features of the React ecosystem.

## Table of Contents

1. [Introduction](#introduction)
2. [Projects](#projects)
- [04bgChanger](#04bgchanger)
- [05PasswordGenerator](#05passwordgenerator)
- [06currencyConvertor](#06currencyconvertor)
- [07reactRouter](#07reactrouter)
- [08miniContext](#08minicontext)
- [09themeswitcher](#09themeswitcher)
- [10todocontextLocal](#10todocontextlocal)
- [reduxToolkitTodo](#reduxtoolkittodo)
3. [Getting Started](#getting-started)
4. [Installation](#installation)
5. [Usage](#usage)
6. [Contributing](#contributing)
7. [License](#license)


| Sr. No. | Project | Topics Covered |
|---------|--------------------|------------------------------------------------------|
| 1 | 04bgChanger | `useState` hook, event handling |
| 2 | 05PasswordGenerator| `useState`, `useCallback`, `useEffect`, `useRef` |
| 3 | 06currencyConvertor| Custom hooks, state management, side effects |
| 4 | 07reactRouter | React Router, routing, and navigation |
| 5 | 08miniContext | Context API, global state management |
| 6 | 09themeswitcher | Context API, state management, theming |
| 7 | 10todocontextLocal | Context API, local storage, state management |
| 8 | reduxToolkitTodo | Redux Toolkit, state management, actions, reducers |


## Introduction

The **React-Intermediate** repository showcases several projects that cover a range of React concepts, including state management with Redux Toolkit, use of hooks such as `useState`, `useCallback`, `useEffect`, and `useRef`, and advanced topics like the Context API. These projects are intended for developers who have a basic understanding of React and want to move towards more complex and scalable applications.

## Projects

### 04bgChanger

- **Description**: A simple background color changer that utilizes basic React state management to switch between different background colors.
- **Concepts Covered**: `useState` hook, event handling.

### 05PasswordGenerator

- **Description**: A password generator application that demonstrates the use of various hooks to manage state and effects, including `useState`, `useCallback`, `useEffect`, and `useRef`.
- **Concepts Covered**: State management, callback hooks, side effects, references.

### 06currencyConvertor

- **Description**: A currency converter app that uses custom hooks for encapsulating logic related to currency conversion.
- **Concepts Covered**: Custom hooks, state and effect management.

### 07reactRouter

- **Description**: A project focused on implementing React Router for navigating between different components/pages within a React application.
- **Concepts Covered**: React Router, routing and navigation.

### 08miniContext

- **Description**: A mini application that introduces the use of Context API to manage and share state across components without prop drilling.
- **Concepts Covered**: Context API, global state management.

### 09themeswitcher

- **Description**: A theme switcher application that allows users to toggle between different themes using context.
- **Concepts Covered**: Context API, state management, theming.

### 10todocontextLocal

- **Description**: A to-do list application that uses the Context API for state management and stores data locally to maintain the state even after a refresh.
- **Concepts Covered**: Context API, local storage.

### reduxToolkitTodo

- **Description**: A to-do list application utilizing Redux Toolkit for state management, demonstrating how Redux can be used for handling complex state in a scalable manner.
- **Concepts Covered**: Redux Toolkit, state management, actions, reducers.

## Getting Started

To get a copy of this repository and start working on these projects, follow the instructions below.

## Installation

1. Clone the repository:
```bash
git clone https://github.com/dpvasani/React-Intermediate.git
```
2. Navigate to the project directory:
```bash
cd React-Intermediate
```
3. Install the required dependencies:
```bash
npm install
```

## Usage

Each project is contained within its own folder. You can run any project by navigating to its directory and starting the development server:

1. Navigate to the project folder:
```bash
cd <project-folder>
```
2. Start the development server:
```bash
npm start
```

Replace `<project-folder>` with the name of the project directory you wish to run, such as `04bgChanger` or `reduxToolkitTodo`.

## Contributing

Contributions are welcome! If you have any ideas or improvements, feel free to fork the repository, create a new branch, and submit a pull request. Please make sure to follow the existing code style and include appropriate tests where applicable.

1. Fork the repository.
2. Create a new branch: `git checkout -b feature-name`
3. Make your changes and commit them: `git commit -m 'Add feature-name'`
4. Push to the branch: `git push origin feature-name`
5. Open a pull request.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

Enjoy exploring and learning from these intermediate React projects! If you have any questions or need help, feel free to open an issue or reach out.

Happy Coding! 🎉

0 comments on commit c153e04

Please sign in to comment.