Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/shopot/react-101

Introduction to React.js for RS School students and beyond
https://github.com/shopot/react-101

mobx react redux rsschool typescript vite vitest zustand

Last synced: about 16 hours ago
JSON representation

Introduction to React.js for RS School students and beyond

Awesome Lists containing this project

README

        

# πŸ“š React.js introducing

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС Π² Π²ΠΈΠ΄Π΅ конспСкта для студСнтов курса [RS School React Course](https://rs.school/react).

Π Π°Π·Π΄Π΅Π»Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² порядкС возрастания слоТности, всС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π² Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… README.md написаны Π½Π° JavaScript, Ρ‚Π°ΠΌ Π³Π΄Π΅
Π΅ΡΡ‚ΡŒ уточнСния с использованиСм TypeScript это ΡƒΠΊΠ°Π·Π°Π½ΠΎ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° Π² Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… написаны
Π½Π° [TypeScript](https://www.typescriptlang.org/) + [Tailwind CSS](https://tailwindcss.com/).

* [Знакомство с JSX](https://github.com/shopot/react-101/tree/jsx)
* [ΠžΡ‚Ρ€ΠΈΡΠΎΠ²ΠΊΠ° элСмСнтов](https://github.com/shopot/react-101/tree/react-render)
* [ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ - ΠΎΠ΄Π½Π° ΠΈΠ· основных ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ React](https://github.com/shopot/react-101/tree/components)
* [Условный Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³](https://github.com/shopot/react-101/tree/conditional-rendering)
* [ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий](https://github.com/shopot/react-101/tree/event-handling)
* [Бписки ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ - React Key Concepts](https://github.com/shopot/react-101/tree/rendering-lists)
* [БостояниС: ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, знакомство с useState](https://github.com/shopot/react-101/tree/hook-use-state)
* [ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ стилСй CSS - ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€](https://github.com/shopot/react-101/tree/react-styling)
* [React DOM ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ - ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ„ΠΎΡ€ΠΌ](https://github.com/shopot/react-101/tree/form-components)
* [БовмСстноС использованиС состояния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ](https://github.com/shopot/react-101/tree/sharing-state)
* [Знакомство с Ρ…ΡƒΠΊΠΎΠΌ useEffect](https://github.com/shopot/react-101/tree/hook-use-effect)
* [Руководство React Quiz App - ΠœΡ‹ΡΠ»ΠΈΠΌ ΠΊΠ°ΠΊ React](https://github.com/shopot/react-101/tree/react-quiz-app)
* [ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… - Fetching data](https://github.com/shopot/react-101/tree/fetching-data)
* [ΠœΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ Π² SPA - React Routing](https://github.com/shopot/react-101/tree/react-routing)
* [Знакомство с Ρ…ΡƒΠΊΠΎΠΌ useReducer](https://github.com/shopot/react-101/tree/hook-use-reducer)
* [Знакомство с Ρ…ΡƒΠΊΠΎΠΌ useRef](https://github.com/shopot/react-101/tree/hook-use-ref)
* [Знакомство с Ρ…ΡƒΠΊΠΎΠΌ useContext](https://github.com/shopot/react-101/tree/hook-use-context)
* [Π Π°Π±ΠΎΡ‚Π° с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ - ΠΎΠ±Π·ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ React Hook Form](https://github.com/shopot/react-101/tree/react-hook-form)
* [Знакомство с React API: createPortal](https://github.com/shopot/react-101/tree/react-create-portal)
* [ΠŸΡƒΡ‚Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠΎ Flux Π² ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°Ρ…](https://github.com/shopot/react-101/tree/react-flux)
* [Знакомство с Redux](https://github.com/shopot/react-101/tree/redux-base)
* [Знакомство с Redux Toolkit (RTK)](https://github.com/shopot/react-101/tree/redux-toolkit-quick)
* [Знакомство с RTK Query](https://github.com/shopot/react-101/tree/rtk-query)
* [НовыС возмоТности Π² Redux Toolkit 2.0](https://github.com/shopot/react-101/tree/redux-tollkit-2)
* [Знакомство MobX](https://github.com/shopot/react-101/tree/mobx)
* [Знакомство с Zustand](https://github.com/shopot/react-101/blob/zustand/README.md)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π΄Π΅ΠΏΠ»ΠΎΠΉ):

- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Todo App](https://todo-app-ab1e50.netlify.app)
- [form-components](https://github.com/shopot/react-101/tree/form-components)
- [hook-use-reducer](https://github.com/shopot/react-101/tree/hook-use-reducer)
- [hook-use-context](https://github.com/shopot/react-101/tree/hook-use-context)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Roadmap (Accordion)](https://react-roadmap-ab1e50.netlify.app)
- [sharing-state](https://github.com/shopot/react-101/tree/chapter-10)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ useEffect](https://react-use-effect-ab1e50.netlify.app)
- [hook-use-effect](https://github.com/shopot/react-101/tree/hook-use-effect)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Quiz App](https://quiz-app-ab1e50.netlify.app)
- [react-quiz-app](https://github.com/shopot/react-101/tree/react-quiz-app)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Fetching Data](https://fetch-data-ab1e50.netlify.app)
- [fetching-data](https://github.com/shopot/react-101/tree/fetching-data)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с React Router](https://react-router-ab1e50.netlify.app)
- [react-routing](https://github.com/shopot/react-101/tree/react-routing)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ useRef](https://react-useref-ab1e50.netlify.app)
- [hook-use-ref](https://github.com/shopot/react-101/tree/hook-use-ref)
- πŸ”— [ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ React Hook Form](https://react-hook-form-ab1e50.netlify.app)
- [react-hook-form](https://github.com/shopot/react-101/tree/react-hook-form)

Information

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π° ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

```shell
git clone https://github.com/shopot/react-101.git
cd react-101
```

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ redux-base)

```shell
git checkout redux-base
```

УстановитС зависимости

```shell
npm install
```

ЗапуститС dev-сСрвСр

```shell
npm run dev
```

## πŸ“š React Testing

* [ΠžΡΠ½ΠΎΠ²Ρ‹ тСстирования](https://github.com/shopot/react-101/tree/react-testing-01)
* [Vitest: Установка ΠΈ базовая настройка](https://github.com/shopot/react-101/tree/react-testing-02)
* [ΠžΠ±Π·ΠΎΡ€ React Testing Library](https://github.com/shopot/react-101/tree/react-testing-03)
* [ΠžΠ±Π·ΠΎΡ€ Mock Service Worker (MSW)](https://github.com/shopot/react-101/tree/react-testing-msw)

## πŸ“š React ΠΈ TypeScript

* [ΠšΠΎΠ½ΡΠΏΠ΅ΠΊΡ‚ ΠΏΠΎ TypeScript](https://github.com/shopot/react-101/blob/ts-notes/README.md)
* [React TypeScript Cheatsheet](https://react-typescript-cheatsheet.netlify.app/docs/basic/getting-started/basic_type_example)

## πŸ“š АрхитСктура ΠΈ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹

> Coming soon...

## πŸ““οΈ ΠŸΠΎΠ»Π΅Π·Π½ΠΎΡΡ‚ΠΈ

- πŸ”— [БоглашСниС ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ… (conventionalcommits.org)](https://www.conventionalcommits.org/ru/v1.0.0/)