Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/imranhsayed/react-workshop

:hammer_and_pick: :construction: This is a workshop for learning how to build React Applications
https://github.com/imranhsayed/react-workshop

babel components context context-api forms higher-order-component javascript jsx live-search mmenu props react react-components react-memo react-workshop reactjs refs state state-management webpack

Last synced: 5 days ago
JSON representation

:hammer_and_pick: :construction: This is a workshop for learning how to build React Applications

Awesome Lists containing this project

README

        

# React Workshop

:fire: This is a workshop for learning how to build React Application

******* PLEASE STAR MY REPO TO SUPPORT MY WORK 🙏 ******

Please follow me 🙏 on [twitter](https://twitter.com/imranhsayed) and [github](https://github.com/imranhsayed) to stay updated with new content

## :video_camera: [App Demo](https://github.com/imranhsayed/react-workshop/tree/03-react-app-example2)
![](Handling-forms.gif)

## :video_camera: React Developer Tools (Chrome Extension) Demo
![](React-Chrome-Extension.gif)

## :video_camera: [Live Search Demo](https://github.com/imranhsayed/react-workshop/tree/live-search-react)
![](live-search-demo.gif)

## :video_camera: [Mmenu Navigation]()
![](mmenu.gif)

## Before you Start
I've branched the repo for individual topics.

To see all branches run: `git branch --all`.

To checkout to individual branch run: `git checkout `. Then check its README.md .
From there on you should be good.

## Branch Info

### Day 1:
1. :snowflake: [01-add-react-in-a-min](https://github.com/imranhsayed/react-workshop/tree/01-add-react-in-a-min) : Create a react app in a minute :clock1: using React Scripts
2. :rocket: [01-create-react-app](https://github.com/imranhsayed/react-workshop/tree/01-create-react-app) : Create a React application using create-react-app
3. :package: [01-react-app-parcel](https://github.com/imranhsayed/react-workshop/tree/01-react-app-parcel) : Create a React application using parcel
4. :gift: [01-react-app-webpack](https://github.com/imranhsayed/react-workshop/tree/01-react-app-webpack) : Set up React application with using Webpack and Babel

### Day 2:
5. :tanabata_tree: [02-component-types](https://github.com/imranhsayed/react-workshop/tree/02-component-types) : Types of Components : Class & Functional Components
6. :dizzy: [02-jsx-examples](https://github.com/imranhsayed/react-workshop/tree/02-jsx-examples) : Examples of JSX
7. :snowman: [02-state-and-props](https://github.com/imranhsayed/react-workshop/tree/02-state-and-props) : Examples for Component State and Props
8. :ear_of_rice: [02-hierarchical-components](https://github.com/imranhsayed/react-workshop/tree/02-hierarchical-components) Demo for Parent & Child Component, with state and props.
9. :crossed_flags: [02-handling-routes](https://github.com/imranhsayed/react-workshop/tree/02-handling-routes) Handling routes using @reach/router
10. :ear_of_rice: [02-get-derived-state-from-props](https://github.com/imranhsayed/react-workshop/tree/02-get-derived-state-from-props) Example for Component Lifecycle method: getDerivedStateFromProps, constructor, forceUpdate

11. :clipboard: [02-handling-forms](https://github.com/imranhsayed/react-workshop/tree/02-handle-forms) Handling forms in react

### Day 3:
12. :package: [03-react-application-example](https://github.com/imranhsayed/react-workshop/tree/03-react-application-example) Example for creating React Application with Header Footer Navbar, Display Posts by fetching data from
13. :snowman: [03-react-app-example2](https://github.com/imranhsayed/react-workshop/tree/03-react-app-example2) Example for Adding New posts using when the form is submitted. and api and Handling forms
14. :dizzy: [03-active-links](https://github.com/imranhsayed/react-workshop/tree/03-active-links) Example for [Active links](https://reach.tech/router/example/active-links) using Reach router.

15. :evergreen_tree: [03-higher-order-component](https://github.com/imranhsayed/react-workshop/tree/03-higher-order-component) Higher Order Component Example
16. :sweat_drops: [03-pure-component](https://github.com/imranhsayed/react-workshop/tree/03-pure-components) Pure Components Example
17. :memo: [03-react-memo](https://github.com/imranhsayed/react-workshop/tree/03-react-memo) React memo example
18. :arrow_right: [03-refs](https://github.com/imranhsayed/react-workshop/tree/03-refs) React's Refs example
19. :palm_tree: [03-context](https://github.com/imranhsayed/react-workshop/tree/03-context) React Context example

### React Hooks
20. :arrow_right: [react-hooks](https://github.com/imranhsayed/react-hooks) React Hooks

### Miscellaneous:
21. :mag_right: [live-search-react](https://github.com/imranhsayed/react-workshop/tree/live-search-react) Realtime search on typing using react and axios. Includes pagination( Onchange Input ).
22. :iphone: [mmenu-react-app](https://github.com/imranhsayed/react-workshop/tree/mmenu-react-app) Mobile menu Sidebar using Burger Menu

## Installation

1. Clone this repo in `git clone https://github.com/imranhsayed/react-workshop`
2. `cd react-workshop`
3. `git checkout branch-name`
4. `npm install`

You can see the branches and their details listed above.

## Instructions

Please follow the README for individual repositories

## Common Commands

- `dev` Runs webpack dev server for development ( in watch mode )
- `prod` Runs webpack in production mode

## Workshop Gallery :sunrise_over_mountains:
1. [Pictures](https://twitter.com/imranhsayed/status/1125435733106237441)
2. [MeetUp](https://www.meetup.com/PuneJS/events/260908693/)

## Tutorial Videos :movie_camera:
1. [React Tutorial Series](https://youtu.be/M-Aw4p0pWwg)
2. [React Hooks Series](https://youtu.be/2p0N29Hn-Vk)

## FAQs

1. How to pass a parameter in a event handler?

```ruby
const handleRemoveProductClick = ( event, productId ) => {
console.warn( 'Clicked productId', productId );
};
return(
handleRemoveProductClick( event, item.productId ) }>Item
)
```

## Useful Blogs

1. [SetUp React App with Webpack and Babel](https://codeytek.com/set-up-react-app-with-webpack-and-babel-react-babel-webpack-install-node-application/)

## Social Links

1. [Twitter](https://twitter.com/imranhsayed)

## License

[![License](http://img.shields.io/:license-mit-blue.svg?style=flat-square)](http://badges.mit-license.org)

- **[MIT license](http://opensource.org/licenses/mit-license.php)**