Description
Build interactive, maintainable web applications with React components, state management, hooks, client-side routing and unit tests.
About this course
This course teaches you to build a modern React application as a working JavaScript developer. You will create components, manage state, load data with effects, use the core and custom hooks, add client-side routing, and write unit tests. You finish with a small multi-page React app that loads data from an API and ships with a passing test suite.
Who it is for
This course is for front-end and full-stack developers, web designers who code, and back-end developers moving into user interface work.
Prerequisites
Working knowledge of modern JavaScript (ES6 and later): let and const, arrow functions, modules, destructuring, promises and async/await
HTML and CSS
Requirements
Works on Windows, macOS or Linux
Node.js and npm (free)
A code editor such as Visual Studio Code (free) and a modern browser
What you will be able to do
- You will be able to build React function components with JSX and props, including lists with keys and conditional rendering.
- You will be able to manage component and shared state with useState, useReducer and useContext, including controlled form inputs.
- You will be able to load data from an API with useEffect, handle loading and error states, and extract the logic into a custom hook.
- You will be able to add client-side routing with React Router, including route parameters, query strings and nested layouts.
- You will be able to write unit tests for components with a test runner and React Testing Library, including user events and mocked fetch calls.
Syllabus
Setup, JSX and components 2.5 hours
Creating a project with a current build tool, JSX, Function components and props, Lists and keys, Conditional rendering.
State and events 2.5 hours
useState, Event handling, Controlled form inputs, Lifting state up, Immutable state updates.
Effects and data 2 hours
useEffect and its dependencies, Fetching data from an API, Loading and error states, useRef.
Hooks beyond the basics 3 hours
useContext for shared state, useReducer for complex state, useMemo and useCallback, The rules of hooks, Writing custom hooks.
Routing 2.5 hours
React Router routes, Links and navigation, Route parameters, Query strings, Nested layouts.
Unit testing React 3 hours
A test runner (Vitest or Jest), React Testing Library queries, Simulating user events, Testing async behavior, Mocking fetch.
Capstone 2.5 hours
Routed multi-page app, Data loading, Shared state through context, Passing test suite.
Coaching sessions 1.5 hours
One-on-one or small-group coaching, scheduled with your coach.
How it is delivered
How you learn
On-demand asynchronous training with online support, plus 1.5 hours of coaching.
Live or in person
Live online or in-person sessions are available for an additional fee. Email admissions@wecancodeit.org for details.
TechCred
Eligible credential
React JavaScript Programming
Reimbursement applies only to the credential approved in your TechCred application, so use the exact credential name shown on this page.
Funding
Ohio's TechCred program may reimburse eligible Ohio employers up to $1,000 per person, per credential, and up to $30,000 per application, for eligible costs such as tuition and certification costs.
TechCred's maximum is $1,000 per person, per credential, toward this price.
Timeline
The current application period opens at 9:00 a.m. on October 1, 2026 and closes at 3:00 p.m. on October 30, 2026.
Training must start no earlier than the first day of the application period and be completed within 12 months of the award date.
What we provide
For each learner, We Can Code IT provides an itemized per-person invoice that shows the exact credential name, and a certificate that shows the learner's name, the credential and the date earned (or the vendor's exam record for certifications). We can also send a written quote to include with your TechCred application.
Pricing is the same for all customers, whether or not you use TechCred.
We Can Code IT is an independent training provider. Being listed as an eligible TechCred provider is not an endorsement by the State of Ohio and does not guarantee funding. The Ohio Department of Development makes all TechCred decisions, so check the state's current program guidelines before you apply. Program details: the State of Ohio’s TechCred page.
Enroll your team
One or a few learners
Choose the number of seats, add the course to your cart and check out.
A group, or a written quote
Send the form below for group enrollment or a written quote to include with your TechCred application. We reply within one business day. You can also email admissions@wecancodeit.org.
We Can Code IT, LLC, 26300 Cedar Rd, Suite 1105, Beachwood, OH 44122. Registered with the Ohio State Board of Career Colleges and Schools, Registration No. 15-03-2064T.