TypeScript at Application Boundaries
Unknown data and runtime validation
Validate data that TypeScript cannot trust.
8 minutes - Beginner to intermediate
What this means
JSON, form data, environment variables, and API responses begin as unknown. Runtime schemas check actual values before the application treats them as typed data.
In beginner terms, this topic answers one practical question: "What should I write, and why does React care about it?" Do not try to memorize the syntax first. First understand the idea, then connect the syntax to that idea.
Why it matters
Static annotations cannot protect a running application from malformed external input.
When you build real React screens, this idea helps you decide where data should live, what the user should see, and what should happen after an interaction. That is why this lesson is part of the main path instead of being an optional detail.
Step by step
1. Notice the UI problem this topic solves. 2. Look at the smallest possible example. 3. Change one value and predict what should appear. 4. Run the example and compare the result with your prediction. 5. Use the practice task before moving on.
Small example
const result = LessonSchema.safeParse(input);Common mistake
Do not copy unknown data and runtime validation syntax without explaining what problem it solves and checking the result.
Practice task
Change one part of the example, predict the result, run it, and explain the result in your own words.
Remember this
Never replace runtime validation with a type assertion.
try.it
Examples
Try it: Unknown data and runtime validation
Edit this focused TypeScript example and run it in the browser preview.
Preview runs React in a sandboxed browser frame, never on the server.
editor
preview
Login to save progress
You can read lessons without an account, but progress requires login.