Overview
In Part 1, we followed a request from a stored todo into the browser and used that path to establish the marketplace. Now we will look more closely at the browser code: how HTML becomes a document, how components represent state, and how requests and navigation change what appears.
Continue using the practice application (practice/) from Part 1 for chapter
examples and local observations. Individual exercises use the exercise starter
or environment named in their handout. Continue the marketplace project in the
separate local marketplace repository (marketplace/), extending its read
interface through six milestones. Changes in the practice application do not
appear in the marketplace repository, and changes in the marketplace repository
do not appear in a freshly extracted practice application.
Review the HTML, JavaScript and TypeScript reference chapters in Course
Practicalities when their syntax is unfamiliar.
Part structure
- HTML & the DOM — Distinguish HTML source, the live document, and visible rendering through a small browser experiment.
- Components & Composition — Define component inputs, compose views, and test their visible contracts.
- State & Reactivity — Separate stored state, derived values, and effects before adding more interactions.
- Events & Dynamic Rendering — Connect events and bindings to conditional, keyed, and recursive output.
- Internet & HTTP Essentials — Build the network and protocol vocabulary needed to reason about browser requests.
- Fetching Data & Network States — Decode remote data and represent loading, empty, failure, recovery, and stale-request behavior.
- Routing, Layouts & Shared State — Give pages stable addresses and choose state owners by scope and lifetime.
- Rendering & Client/Server Boundaries — Compare rendering strategies and place browser state, server state, configuration, and secrets correctly.
- Marketplace Project: Browsing the Marketplace — Apply the part’s ideas through six cumulative marketplace milestones.
- Recap and Feedback — Connect the mechanisms, reflect on the resulting browser flow, and give feedback.
Help us with research
0 / 10 points
Before getting started with the second part, please complete a short survey about your learning goals and course experiences. Your responses can help us better understand how students learn and how course tools and feedback could be improved in the future.
Taking part in the research is voluntary. You may skip survey items you do not want to answer, and you can choose whether or not to allow your survey responses to be used for research. You will receive the course points for completing the survey regardless of that choice.
After completing the survey, return here and enter the code shown at the end. Completing the survey grants you a small amount of course points.