Skip to content

Latest commit

 

History

History
executable file
·
68 lines (50 loc) · 2.36 KB

00-Introduction.md

File metadata and controls

executable file
·
68 lines (50 loc) · 2.36 KB

🕒 P00 – Introduction

Welcome to the Timer App Tutorial, where you'll learn to build a multi-timer web app using React and Redux Toolkit. This project is inspired by productivity tools like Toggl, and gives you the skills to manage dynamic time-based state in a modern React application.

This app will allow users to:

  • ➕ Start and manage multiple independent timers
  • ⏸️ Pause and resume timers
  • ⏹️ Stop and reset timers
  • 🧠 Understand how time updates work in the browser
  • 🔄 Store and update state using Redux Toolkit

🛠️ Technologies You’ll Use

  • React – Component-based UI library
  • Redux Toolkit – State management made simple
  • JavaScript – ES6+ functional programming techniques
  • React HooksuseEffect, useSelector, useDispatch
  • setInterval / clearInterval – Real-time updates
  • CSS Modules or Global Styles – To style the UI (you choose!)

🧠 Why This App?

  • ✅ It's more engaging than a simple to-do list
  • ✅ Involves real-time behavior (timing is tricky!)
  • ✅ Gives you a foundation in Redux state + side effects
  • ✅ Helps practice separation of concerns and UI reusability

🧩 Learning Objectives

By the end of this tutorial, you’ll be able to:

✅ Structure Redux state to track timers and updates
✅ Write clean, reactive components with real-time logic
✅ Use intervals effectively without memory leaks
✅ Practice code organization across Redux slices and UI components
✅ Extend your app with styling, persistence, and filtering


🔍 What You’ll Build

A Timer Board where each timer runs independently. Think:

  • A Pomodoro tracker for different tasks
  • Multiple stopwatches running in parallel
  • Task-based time logging

Each timer will:

  • Have a start time and elapsed time
  • Be able to pause/resume/reset
  • Be displayed and updated live in the UI

💬 Example AI Prompts

  • "Explain how setInterval is used in a React component."
  • "Check if my useEffect logic is cleaning up intervals correctly."
  • "How can I persist timers using localStorage?"

Use AI to explore, debug, and get code reviews as you go!


🚀 Let’s Go!

When you’re ready, continue to P01 - Getting Started and set up your React project.

This is going to be fun. Let’s build something awesome! 🎉