Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
React Advance Component Composition-Next JS-Typescript 2025
Rating: 3.7 out of 5(8 ratings)
117 students

React Advance Component Composition-Next JS-Typescript 2025

Advance React in Typescript and Tailwind CSS
Last updated 1/2025
English

What you'll learn

  • You will learn how to create advanced React components using compound component composition techniques.
  • You will understand and apply SOLID principles, DRY principles, and various React design patterns such as the Context Provider Pattern and Render Props Pattern
  • You will learn how to use Next JS, Typescript and Tailwind css to build efficient and maintainable UI's
  • You gain the ability to plan and structure your code thoughtfully, resulting in well-architected React components.

Course content

1 section43 lectures10h 7m total length
  • Introduction2:02

    Explore advanced design patterns and compound component composition in React to build a scalable, maintainable product card using clean code and industry best practices, contrasting enterprise versus amateur architecture.

  • Referencing UI Libraries5:08
  • Course Demonstartion5:02
  • Analyzing Figma Design7:12
  • Analyzing Component Behavior9:08

    Analyze how a component behaves, negotiate design versus development constraints, and implement stateful interactions such as adding to cart and updating backend statistics for a cohesive app.

  • Introduction to Figma Assets13:39

    Prepare tangible and intangible Figma assets before development, exporting images and SVGs and sampling brand colors to create identity colors for Tailwind CSS in React Next.js projects.

  • Figma Color Sampling11:27

    Establish a three-color system—primary, secondary, tertiary—with the app prefix to create a single color source of truth; name headings, body, and gradients accordingly.

  • Creating A Next JS Project5:48

    Initialize a Next.js project with npx create-next-app, name it card component, enable TypeScript and Tailwind CSS, and use the app router inside the card component folder.

  • Project Cleanup and Extensions6:24

    Cleanup a next.js project by installing es7 react redux graphql and tailwind extensions, create a clean react component, refine styles, and run npm run dev to preview at localhost 3000.

  • Extending Tailwind Colors4:44
  • Installing React Icons3:54
  • Tailwind CENTER Style8:40

    Explore the center effect in Tailwind by creating a reusable center class with flex, justify-center, and items-center, and test with React icons to ensure centered layouts and flexible overrides.

  • Creating Image Component21:24
  • Refactoring Image Component12:05

    Refactor a reusable Next.js image component to support width/height and fill modes, test 120px sizes, address aspect ratio, and enable container-based sizing via conditional rendering and a boolean fill prop.

  • Creating a Box Container Component35:58

    Create a reusable box container component in React with gradient variants, adjustable size, and dynamic content via children, showcasing pattern recognition and the DRY principle.

  • Refactoring Box Container Component12:04
  • Creating a Button Component12:11

    Create a reusable app button component in a React Next.js TypeScript project, receiving children and an onClick handler, styled with tailwind and hover effects, adaptable for login or subscribe actions.

  • Creating a Product Card Component54:13

    Learn to build a product card component in Next.js project with TypeScript, starting from a simple card and evolving into a compound component using TSX, flex layouts, and responsive styling.

  • Product Card Component Improvement9:39

    Refine a product card component by studying a ui library's architecture, adopting a compound component pattern, and refactoring into standalone pieces for scalability, reusability, and accessible state management.

  • Creating the Inceremnter Component14:08
  • Incementer Minimum & Maximum7:58
  • Incrementer State Lifting10:18

    Refactor the incrementer into a reusable, externally controlled component by lifting state up with counter and setCounter props, while optionally handling minimum and maximum limits for flexibility across apps.

  • Creating the Like Component15:04

    Design a scalable like component in React by extracting a reusable stats counter, applying the render props pattern for variants, and enforcing single responsibility for maintainable Next.js TypeScript code.

  • Render-Prop Pattern15:32

    Learn how the render props pattern decouples behavior from presentation to create reusable, scalable components, enabling calling modules to render icons like heart or thumbs up via a render function.

  • Refactoring the Like Component21:58
  • Separating Concerns19:51
  • Creating a Simple Compound Component35:03
  • Creating Item Card Details9:12
  • Creating a Description Component3:30
  • Creating Item Action Component7:42

    Extract the bottom section into a reusable item actions component to improve maintainability and reusability of item details, price tag, and add-to-cart interactions.

  • Introduction to API Context from ChatGpt24:16

    Learn how the React context API shares data across the application and avoids prop drilling. Create a context, provide a value via a provider, and consume it with useContext hook.

  • Context Provider Pattern Introduction27:04

    Explore the context provider pattern in React and TypeScript, learning to create and consume a context, wrap children, and manage product data with a product card including add to cart.

  • Context Provider Pattern Continues10:01

    explore the context provider pattern by implementing a product provider, wrapping children, and accessing cart and product actions via use product context, with error handling for outside-provider usage.

  • Implementing Context-Provider API42:18

    Create a product context and provider to wrap the top-level compound component. Expose product data and actions such as add to cart, likes, and quantity changes.

  • Testing the provider9:11
  • Pulling Image from the Provider16:47

    Learn to extract an image URL from a product context using a provider pattern, replacing hard-coded values with props so the image component receives its source from context.

  • Product Details & Product Name32:05

    Create a highly reusable product details component using the context provider pattern, add a product name and price tag, and style the image box with Tailwind gradients.

  • Creating a Product Details Component2:50
  • Creating a Price Tag Component5:51
  • Creating a Description Component4:26

    Create a description component by implementing a context provider pattern, echoing the CDN approach, and render a self-closing description tag within a highly reusable, scalable product card.

  • Creating Item Action Component12:45

    Develop an item action component in a React Next.js TypeScript workflow, wiring state and render logic to display and increment a likes counter within a product details view.

  • Adding Add-To-Cart Action8:12

    Explore how the add-to-cart action is wired through a provider and render-prop patterns. See how context and client components, with console logs, manage product ids and cart state.

  • Final Touches10:27

    Explore final touches on a compound product component that uses context for quantity and actions, demonstrating flexible, reusable composition with a product image, details, and counter controls.

Requirements

  • Students should have a basic understanding of Javascript and React before taking this course. Familiarity with HTML and CSS is also recommended. Some expereince with Typescript will be beneficial, though not strictly necessary.

Description

Unlock the secrets to creating advanced React components with my comprehensive course,

"Master Advanced React Component Composition."

Designed for intermediate to advanced learners, this course will elevate your React skills by diving deep into compound component composition techniques.

You will learn how to build sophisticated product cards using SOLID principles, DRY principles, and essential React design patterns such as the Context Provider Pattern and Render Props Pattern. This course emphasizes clean code practices and thoughtful planning, ensuring you can create well-architected React components that stand out to employers.

Our tech stack includes Next.js, TypeScript, and Tailwind CSS, providing you with a modern and powerful toolkit to develop efficient and maintainable applications. Whether you're a college student with some web development experience or a professional looking to enhance your skills, this course is tailored to help you excel.

By the end of the course, you will have a thorough understanding of advanced React concepts and the ability to apply them in real-world scenarios.

In addition, you will discover best practices for structuring and organizing your projects, improving your workflow, and boosting your productivity. By the end of the course, you will have a thorough understanding of advanced React concepts and the ability to apply them in real-world scenarios. Join us and take the next step in your development career with "Master Advanced React Component Composition."

Who this course is for:

  • The course is designed for intermediate to advanced learners who have a foundational understanding of JavaScript and React. It is ideal for developers who want to deepen their knowledge of React component architecture and design patterns.