sparkterminal model 1.0

Spark is your path to Design Engineer.

Most designers can prompt their way to an app. Few can start from an empty file and write one. Spark teaches you how, one line at a time.

Free while it is being written. No code needed to begin.

SearchUsers.jsxPick a line, or type in the preview
25910  return (11    <div>2030    </div>31  );32}
Line 4

Creates a piece of state. query is what has been typed so far and setQuery changes it. It starts as an empty string, like a blank text field.

3 of 7
Preview
  • Ana Ruiz
  • Ben Okafor
  • Chloe Martin
  • Dan Hughes
  • Esther Park
  • Hannah Lee
  • Jonas Berg
  • Maya Patel

The first file in module 1. Every line gets explained before you move on.

How the course works

01

One idea at a time.

Every module is split into short sections that each fit on a phone screen. Read one, and move on when it makes sense.

Module 01Make a real file yours
01 / 11

What we're doing today

You're about to read a real, shipped React component line by line. Not a toy example. Not pseudocode. A component that's actually running in production somewhere right now, handling real users' clicks, rendering real data.

02

Try it in the page.

Change something and watch what the code does with it, next to the line that does it.

1const [count, setCount] = useState(0);  // count is 023return (4  <button onClick={() => setCount(count + 1)}>5    Clicked {count} times6  </button>7);

Click the button to watch one render happen.

  1. Render 1: count is 0
03

Check you have it.

Short questions at the end of each module, with the reasoning behind every answer.

Checkpoint · Module 01

Why does SearchUsers have users = [] as a default?

Pick an answer to see the reasoning.

The whole course, in order

19 modules · 5 phases · about 4 hours of reading

Write your first line

Start module 1

Spark is still being written. Leave your email to hear when it is finished.