Skip to main content

Master Custom React Hooks with TypeScript

2h 21m 3s
English
Paid

Course description

Welcome to the course "Creating a Custom React Hook npm Package Using React and TypeScript"! In this course, we will develop a custom React Hook that I published on NPM and which already has almost 150 stars on GitHub.

In this course, you will use TypeScript and various composition strategies to keep your code clean. You will also add many features that make the hook convenient for other developers to use when installing the package.

This course is designed for intermediate-level developers who already have some experience with React and TypeScript. Even if you are new to React or TypeScript, the lessons are created in a very clear and step-by-step manner, which will be easy to grasp.

The course is divided into four modules. In the first module, you will focus on creating all the necessary tools, setting up the build, and an example application to test your hook. In the second module, you will develop more advanced features, such as changing the document title in advanced ways and even changing the favicon. In the third module, you will perform optimization and improvement to create a truly modern React Hook package and publish it on npm. Finally, in the fourth module, you will publish an example application to serve as a live example of the hook's functionality, as well as a full-fledged documentation site.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 19 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Course Introduction

All Course Lessons (19)

#Lesson TitleDurationAccess
1
Course Introduction Demo
01:06
2
Environment Setup With nvm
02:40
3
Scaffolding a React Hook Library with npm init
07:33
4
Building a Skeleton create-react-app to Test the Hook
04:53
5
Building Title Looping Functionality with the useEffect Hook
12:23
6
Packaging react-use-please-stay as an npm Module using Rollup
09:16
7
Cleaning Up and Refactoring react-use-please-stay
06:30
8
Implementing a Cascading Letter Functionality
07:56
9
Implementing a Marquee Functionality
07:45
10
Implementing Favicon Modification Functionality
08:24
11
Add Interval Time as a Hook Parameter
02:28
12
Add Should Always Play as a Hook Parameter
02:28
13
Use Custom Types to Type the Hook Parameters
11:37
14
Adding a Development-only Warning Logger
09:11
15
Prevent Concurrent Usages of the Hook
06:58
16
Restore Original Values on Refocus and Unmount
09:45
17
Publish the Hook to npm
05:40
18
Prepare the Example App as a Public Example Page
19:09
19
Publish the Example App to GitHub Pages
05:21

Unlock unlimited learning

Get instant access to all 18 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

React, Angular, Node In-Depth Guide: Beginner to Pro

React, Angular, Node In-Depth Guide: Beginner to Pro

Sources: udemy
If you are planning to start your career as a developer or you just want to improve your programming skills, then this course is right for you. Get all you need to start web dev...
80 hours 1 minute 57 seconds
Add React Storybook to a Project

Add React Storybook to a Project

Sources: egghead
In this lesson, we show how to setup React Storybook into an existing React project. We’ll go through common configuration files and how to adjust them.
3 minutes 36 seconds
Redux Saga

Redux Saga

Sources: pluralsight
Redux Saga is a fast-growing library with over 9,000 stars on GitHub. It lets you rapidly create asynchronous apps using a new tool called ES6 Generators. In th
2 hours 54 minutes 54 seconds
Storybook for building React apps

Storybook for building React apps

Sources: fullstack.io
You're going to unlock skills that will help you develop UI faster, better, and with great quality. You will understand why it is important to learn Storybook i
3 hours 16 minutes 25 seconds