The Week-by-Week Syllabus
Over the next six weeks, you’ll dive deep into advanced React concepts, allowing you to build robust applications effectively.
Week 1: Advanced State Management
What to learn: Context API, useReducer, custom hooks.
Why this comes before the next step: Understanding state management is crucial for building scalable applications. Getting this right will enable you to manage application state more effectively as you progress.
Mini-project/Exercise: Build a simple task manager application using Context API and local storage to persist tasks.
Week 2: Composable Component Design
What to learn: higher-order components, render props, compound components.
Why this comes before the next step: Composable patterns allow for greater flexibility and reusability in your components, which is essential for maintaining large applications.
Mini-project/Exercise: Refactor your task manager to support a more composable architecture.
Week 3: Performance Optimization
What to learn: React.memo, useMemo, useCallback, lazy loading.
Why this comes before the next step: Performance is a vital consideration for user experience, especially in complex applications. Optimizing your app will prevent lags and improve load times.
Mini-project/Exercise: Optimize your task manager app by applying at least three of the performance optimization techniques learned.
Week 4: Data Fetching with GraphQL
What to learn: Apollo Client, GraphQL queries, mutations.
Why this comes before the next step: Knowing how to effectively manage data fetching will enable you to build dynamic applications that respond to user input.
Mini-project/Exercise: Integrate Apollo Client into your task manager to fetch a list of tasks from a mock GraphQL API.
Week 5: Type Safety with TypeScript
What to learn: Type annotations, interfaces, generics.
Why this comes before the next step: Type safety is crucial for large applications, allowing you to catch errors early and improve maintainability.
Mini-project/Exercise: Convert your task manager app to TypeScript, applying appropriate type annotations throughout the codebase.
Week 6: CI/CD for React Apps
What to learn: GitHub Actions, Netlify or Vercel deployment.
Why this comes before the next step: Setting up CI/CD pipelines will help automate your development process, making it easier to push updates and maintain quality.
Mini-project/Exercise: Set up a CI/CD pipeline for your task manager app, ensuring it automatically deploys to a hosting service upon code changes.