Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/epicweb-dev/advanced-react-apis
Learn Advanced React Hooks workshop
https://github.com/epicweb-dev/advanced-react-apis
epicreact-dev epicweb-dev hooks kcd-edu react workshop
Last synced: about 5 hours ago
JSON representation
Learn Advanced React Hooks workshop
- Host: GitHub
- URL: https://github.com/epicweb-dev/advanced-react-apis
- Owner: epicweb-dev
- License: other
- Created: 2019-04-24T16:33:31.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2025-01-17T19:20:10.000Z (9 days ago)
- Last Synced: 2025-01-19T03:50:17.355Z (7 days ago)
- Topics: epicreact-dev, epicweb-dev, hooks, kcd-edu, react, workshop
- Language: TypeScript
- Homepage: https://advanced-apis.epicreact.dev
- Size: 9.19 MB
- Stars: 2,057
- Watchers: 27
- Forks: 1,296
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- jimsghstars - epicweb-dev/advanced-react-apis - Learn Advanced React Hooks workshop (TypeScript)
README
🔥 Advanced React APIs
Learn the more advanced React APIs and different use cases to enable great
user experiences.
We’ll look at some of the more advanced hooks and APIs and ways they can be used to
optimize your components and custom hooks. We'll consider each API with common use cases you'll run into in your applications.
[![Build Status][build-badge]][build]
[![GPL 3.0 License][license-badge]][license]
[![Code of Conduct][coc-badge]][coc]## Prerequisites
- You should be experienced with `useState`, `useEffect`, and `useRef`.
## Pre-workshop Resources
Here are some resources you can read before taking the workshop to get you up to
speed on some of the tools and concepts we'll be covering:- [Should I useState or useReducer?](https://kentcdodds.com/blog/should-i-usestate-or-usereducer)
- [How to Implement useState with useReducer](https://kentcdodds.com/blog/how-to-implement-usestate-with-usereducer)
- [useEffect vs useLayoutEffect](https://kentcdodds.com/blog/useeffect-vs-uselayouteffect)
- [Imperative vs Declarative Programming](https://ui.dev/imperative-vs-declarative-programming)## System Requirements
- [git][git] v2.18 or greater
- [NodeJS][node] v20 or greater
- [npm][npm] v8 or greaterAll of these must be available in your `PATH`. To verify things are set up
properly, you can run this:```shell
git --version
node --version
npm --version
```If you have trouble with any of these, learn more about the PATH environment
variable and how to fix it here for [windows][win-path] or
[mac/linux][mac-path].## Setup
This is a pretty large project (it's actually many apps in one) so it can take
several minutes to get everything set up the first time. Please have a strong
network connection before running the setup and grab a snack.Follow these steps to get this set up:
```sh nonumber
git clone --depth 1 https://github.com/epicweb-dev/advanced-react-apis.git
cd advanced-react-apis
npm run setup
```If you experience errors here, please open [an issue][issue] with as many
details as you can offer.## Starting the app
Once you have the setup finished, you can start the app with:
```
npm start
```## The Workshop App
Learn all about the workshop app on the
[Epic Web Getting Started Guide](https://www.epicweb.dev/get-started).[![Kent with the workshop app in the background](https://github-production-user-asset-6210df.s3.amazonaws.com/1500684/280407082-0e012138-e01d-45d5-abf2-86ffe5d03c69.png)](https://www.epicweb.dev/get-started)
[npm]: https://www.npmjs.com/
[node]: https://nodejs.org
[git]: https://git-scm.com/
[build-badge]: https://img.shields.io/github/actions/workflow/status/epicweb-dev/advanced-react-apis/validate.yml?branch=main&logo=github&style=flat-square
[build]: https://github.com/epicweb-dev/advanced-react-apis/actions?query=workflow%3Avalidate
[license-badge]: https://img.shields.io/badge/license-GPL%203.0%20License-blue.svg?style=flat-square
[license]: https://github.com/epicweb-dev/advanced-react-apis/blob/main/LICENSE.md
[coc-badge]: https://img.shields.io/badge/code%20of-conduct-ff69b4.svg?style=flat-square
[coc]: https://kentcdodds.com/conduct
[win-path]: https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/
[mac-path]: http://stackoverflow.com/a/24322978/971592
[issue]: https://github.com/epicweb-dev/advanced-react-apis/issues/new