
React Native + Hooks Course
Master React Native and Hooks from the ground up — covering core hooks, custom hook design, navigation, state management, and production deployment. You'll build real, cross-platform apps for iOS and Android while writing clean, modern JavaScript. This course takes you from setup to app store submission with zero fluff.
What you will learn:
You'll start with JavaScript and React fundamentals, then move into React Native's architecture, core components, and styling system. From there, you'll master useState, useEffect, useReducer, useContext, and performance hooks like useMemo and useCallback. You'll build custom hooks, integrate React Navigation, and manage global state with Zustand and Redux Toolkit. The course also covers testing with Jest and React Native Testing Library, animations, TypeScript integration, and CI/CD pipelines. By the end, you'll have the skills to build, test, and ship production-ready React Native applications.
How you study in practice React Native + Hooks Course
How you practise React Native + Hooks Course
For companies looking to train their team
With Dedika for businesses, the course includes exercises and examples tailored to your own business and the specific needs of your company.
Course content
8 Chapters • 39 LessonsDuration between 4 and 360 hours (you decide)
Chapter 1HideHide detailsSee detailsJavaScript and React Essentials for Hooks
JavaScript and React Essentials for Hooks
Lesson 1 • JSX and the Virtual DOM
Explains JSX compilation, key prop reconciliation, and how React's diffing algorithm minimises native updates. Connects virtual DOM behaviour to performance.
Lesson 2 • Functional Components Deep Dive
Contrasts class components with functional components and explains why hooks require functional components. Establishes the mental model for stateless UI functions.
Lesson 3 • Modern JavaScript Syntax Review
Covers destructuring, spread/rest, arrow functions, and async/await as used throughout React Native codebases. Reduces syntax confusion in later hook examples.
Lesson 4 • Component Lifecycle Concepts
Maps class lifecycle methods to their functional equivalents to prepare students for useEffect. Clarifies mount, update, and unmount phases.
Chapter 2HideHide detailsSee detailsReact Native Foundations and Environment Setup
React Native Foundations and Environment Setup
Lesson 1 • What Is React Native
Explains the bridge architecture, JavaScript thread, and native module system. Positions React Native relative to web React and native development.
Lesson 2 • Creating Your First Project
Uses the React Native CLI to scaffold a project and explains the generated file structure. Connects folder layout to the build pipeline.
Lesson 3 • Core Built-In Components
Introduces View, Text, Image, ScrollView, and TextInput as the primitive UI building blocks. Demonstrates how each maps to a native widget.
Lesson 4 • Setting Up the Development Environment
Installs Node, Watchman, Xcode, and Android Studio with correct SDK versions. Validates the toolchain by running a blank project on both platforms.
Lesson 5 • Styling with StyleSheet
Covers the StyleSheet API, Flexbox layout model, and platform-specific style patterns. Produces a styled, responsive screen layout.
Chapter 3HideHide detailsSee detailsCore Hooks: useState and useEffect
Core Hooks: useState and useEffect
Lesson 1 • Managing State with useState
Introduces the useState signature, state initialisation, and updater function patterns. Covers common pitfalls like stale closures and batched updates.
Lesson 2 • Building a Counter and Timer App
Applies useState and useEffect together in a practical counter and countdown timer. Reinforces state updates, intervals, and cleanup in a real component.
Lesson 3 • Side Effects with useEffect
Explains the dependency array, cleanup functions, and execution timing relative to rendering. Replaces all three class lifecycle methods with a single hook.
Lesson 4 • Fetching Remote Data with Hooks
Builds a data-fetching pattern using useState for data/loading/error states and useEffect for the fetch call. Introduces the loading and error UI states.
Lesson 5 • Rules of Hooks
Enforces the two official rules—top-level calls and React-function-only calls—and explains why they exist. Introduces the ESLint plugin for automatic enforcement.
Chapter 4HideHide detailsSee detailsAdditional Built-In Hooks
Additional Built-In Hooks
Lesson 1 • Performance Hooks: useMemo and useCallback
Memoizes expensive computations with useMemo and stabilises function references with useCallback to prevent unnecessary child re-renders.
Lesson 2 • Imperative APIs with useImperativeHandle
Exposes a controlled imperative API from a child component to a parent ref using useImperativeHandle and forwardRef. Useful for custom input components.
Lesson 3 • Referencing Values with useRef
Uses useRef to persist mutable values across renders without triggering re-renders and to access native component instances. Contrasts with useState for non-UI data.
Lesson 4 • Complex State with useReducer
Implements a reducer function and dispatch pattern for multi-action state machines. Compares useReducer to useState for form and cart scenarios.
Lesson 5 • Sharing State with useContext
Creates a React context, provides it at the tree root, and consumes it with useContext to avoid prop drilling. Builds a theme-switching example.
Chapter 5HideHide detailsSee detailsBuilding Custom Hooks
Building Custom Hooks
Lesson 1 • useForm: Form State Management Hook
Builds a useForm hook that manages field values, validation errors, and submission state. Replaces repetitive form logic across multiple screens.
Lesson 2 • Testing Custom Hooks
Uses React Native Testing Library and renderHook to unit-test custom hooks in isolation. Covers act, async act, and mocking external dependencies.
Lesson 3 • useFetch: Data Fetching Hook
Extracts the fetch-loading-error pattern into a reusable useFetch hook with configurable URL and options. Demonstrates how custom hooks reduce component boilerplate.
Lesson 4 • useLocalStorage and useAsyncStorage
Wraps AsyncStorage in a hook that mirrors the useState API for persistent key-value data. Handles serialisation, deserialisation, and error cases.
Lesson 5 • Custom Hook Design Principles
Defines the naming convention, single-responsibility rule, and composability requirements for custom hooks. Establishes quality criteria before writing code.
Chapter 6HideHide detailsSee detailsNavigation and Screen Management
Navigation and Screen Management
Lesson 1 • Stack Navigator Patterns
Creates a native stack navigator with push, pop, and replace transitions. Passes params between screens and reads them with useRoute.
Lesson 2 • Tab and Drawer Navigators
Adds bottom tab and drawer navigators and nests them inside the stack. Customises tab icons and drawer content with hook-driven state.
Lesson 3 • Authentication Flow with Navigation
Implements a conditional navigator that switches between auth and app stacks based on token state stored in context. Demonstrates real-world protected routing.
Lesson 4 • Navigation Hooks in Depth
Uses useNavigation, useRoute, useFocusEffect, and useIsFocused to control navigation behaviour from within components. Replaces prop-drilling of navigation objects.
Lesson 5 • React Navigation Setup
Installs React Navigation and its native dependencies, then wraps the app in NavigationContainer. Establishes the navigator tree as the app's routing backbone.
Chapter 7HideHide detailsSee detailsState Management at Scale
State Management at Scale
Lesson 1 • Server State with React Query
Uses React Query's useQuery and useMutation hooks to manage server state, caching, and background refetching. Eliminates manual loading/error state management.
Lesson 2 • Redux Toolkit Integration
Configures a Redux store with createSlice, RTK Query for data fetching, and the Provider wrapper. Connects components using useSelector and useDispatch.
Lesson 3 • Context API Patterns at Scale
Splits context into state and dispatch providers to prevent unnecessary re-renders in large trees. Combines useReducer with context for a Redux-like pattern.
Lesson 4 • Global State with Zustand
Creates a Zustand store with actions and selectors, then consumes it with a single hook call. Compares Zustand's minimal API to Context boilerplate.
Lesson 5 • Choosing the Right State Solution
Provides a decision framework comparing local state, context, Zustand, Redux, and React Query by complexity and use case. Prevents over-engineering in real projects.
Chapter 8HideHide detailsSee detailsPerformance, Testing, and Deployment
Performance, Testing, and Deployment
Lesson 1 • Profiling and Diagnosing Performance
Uses Flipper, the React DevTools profiler, and the Performance Monitor to identify slow renders and JS thread jank. Establishes a measure-first optimisation workflow.
Lesson 2 • Optimising Lists and Images
Applies FlatList optimisation props, image caching, and lazy loading to eliminate scroll jank. Covers windowSize, initialNumToRender, and getItemLayout.
Lesson 3 • Testing Components and Hooks
Writes unit and integration tests with Jest and React Native Testing Library, covering user interactions and async behaviour. Achieves meaningful coverage without testing implementation details.
Lesson 4 • Animation with Animated and Reanimated
Builds smooth animations using the Animated API and upgrades to Reanimated 2 for UI-thread animations. Covers spring, timing, and gesture-driven motion.
Lesson 5 • Building and Releasing the App
Generates signed release builds for iOS and Android, configures environment variables, and submits through the respective app distribution pipelines.
Your valid completion certificate
This course is for you:
Web developer: ready to extend existing JavaScript skills into mobile apps.
Career changer: seeking a high-demand skill set with strong job market prospects.
Freelancer: wanting to offer iOS and Android app development to clients.
Computer science student: looking to build a standout mobile portfolio project.
Backend developer: aiming to become a full-stack engineer with mobile capabilities.
Hobbyist coder: motivated to turn a personal app idea into a real product.
What our students say
Your classes are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of my interest without needing to change platforms... I thank you for everything you do, I've already recommended you to other people...

I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.

I like the content and the way videos are presented and transcribed, which speeds up the process!

The platform is fast, simple to use. The diversity of content and complementary videos help a lot with learning.

Top trainings
FAQ
Who is Dedika?
Is the certificate valid in Nigeria?
Are the courses free?
What is the course workload?
What are the courses like?
How do the courses work?
What is the duration of the courses?
What is the cost or price of the courses?
What is an EAD or online course and how does it work?
PDF Course




















