MCPcopy Index your code
hub / github.com/epicweb-dev/advanced-react-patterns

github.com/epicweb-dev/advanced-react-patterns @main sqlite

repository ↗ · DeepWiki ↗
233 symbols 511 edges 124 files 1 documented · 0%
README

🤯 Advanced React Patterns

Learn how to build simple and flexible React Components and Hooks using modern patterns

Not only learn great patterns you can use but also the strengths and
weaknesses of each, so you know which to reach for to provide your custom
hooks and components the flexibility and power you need.

<a alt="Epic Web logo with the words Deployed Version" href="https://advanced-patterns.epicreact.dev"

<img
  width="300px"
  src="https://github-production-user-asset-6210df.s3.amazonaws.com/1500684/254000390-447a3559-e7b9-4918-947a-1b326d239771.png"
/>


Build Status GPL 3.0 License Code of Conduct

Prerequisites

  • The more experience you have with building React abstractions, the more helpful this workshop will be for you.

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:

System Requirements

  • git v2.18 or greater
  • NodeJS v20 or greater
  • npm v8 or greater

All of these must be available in your PATH. To verify things are set up properly, you can run this:

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 or mac/linux.

Setup

Use the Epic Workshop CLI to get this setup:

```sh nonumber npx --yes epicshop@latest add advanced-react-patterns


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.

Kent with the workshop app in the background

Core symbols most depended-on inside this repo

here
called by 7
epicshop/fix.js
readDir
called by 4
epicshop/fix.js
useSlotProps
called by 4
exercises/04.slots/03.problem.prop/slots.tsx
useSlotProps
called by 4
exercises/04.slots/03.solution.prop/slots.tsx
exists
called by 3
epicshop/fix.js
useToggle
called by 3
exercises/03.compound-components/02.solution.validation/toggle.tsx
useToggle
called by 3
exercises/04.slots/01.problem.context/toggle.tsx
useToggle
called by 3
exercises/04.slots/02.solution.generic/toggle.tsx

Shape

Function 233

Languages

TypeScript100%

Modules by API surface

exercises/08.control-props/01.solution.control/toggle.tsx9 symbols
exercises/08.control-props/01.problem.control/toggle.tsx8 symbols
epicshop/fix.js8 symbols
exercises/07.state-reducer/02.solution.default/toggle.tsx7 symbols
exercises/07.state-reducer/02.problem.default/toggle.tsx7 symbols
exercises/07.state-reducer/01.solution.reducer/toggle.tsx7 symbols
exercises/07.state-reducer/01.problem.reducer/toggle.tsx7 symbols
exercises/01.composition/01.solution.compose/index.tsx7 symbols
exercises/01.composition/01.problem.compose/index.tsx7 symbols
exercises/06.state-initializers/02.solution.stability/toggle.tsx6 symbols
exercises/06.state-initializers/02.problem.stability/toggle.tsx6 symbols
exercises/06.state-initializers/01.solution.initial/toggle.tsx6 symbols

Dependencies from manifests, versioned

@epic-web/config1.16.3 · 1×
@epic-web/workshop-app6.90.11 · 1×
@epic-web/workshop-utils6.90.11 · 1×
@playwright/test1.49.0 · 1×
@testing-library/react16.1.0 · 1×
@testing-library/user-event14.5.2 · 1×
@types/node22.10.1 · 1×
@types/react19.0.0 · 1×
@types/react-dom19.0.0 · 1×
cross-env7.0.3 · 1×
epicshop6.90.11 · 1×
eslint9.16.0 · 1×

For agents

$ claude mcp add advanced-react-patterns \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact