Pebellslearn by building
RoadmapsMatrixCoursesSandboxSign in

Course details

Full Stack

See how the parts of a web app fit together: a click leaves the browser, passes through an API, reaches a database and comes back as a screen. One small plant-watering app, Sprout, runs through every lesson, from the first request to login, deployment and a guided build.

Ready to learn6 sections · 23 lessons
Start learning

Course curriculum

How a Full-Stack App Fits Together4 lessons

Where static pages stop, the three layers of a web app and the job each one owns, the round trip a request makes from a click to the database and back, and the choice between sending finished pages or raw data.

  1. Static Pages and Where They Stop12 min
  2. Three Layers, Three Jobs12 min
  3. The Round Trip: Browser to Database and Back14 min
  4. Pages or Data: Who Builds the HTML?14 min
The Client Half3 lessons

How a two-part project keeps separate packages and scripts for client and server, the listen-send-check-update rhythm behind every interactive button, and React screens that load data with honest loading and error states.

  1. Packages and Scripts for a Two-Part App12 min
  2. Click, Fetch, Update13 min
  3. React Screens That Load Data15 min
The Server Half4 lessons

A Node.js server's routes and handlers, sending SQL to PostgreSQL with parameters instead of glued-in values, mapping every user action to one method, route and statement, and where a Redis cache sits in the round trip.

  1. A Node Server: Routes and Handlers14 min
  2. Talking to PostgreSQL from Code14 min
  3. CRUD from Button to Row15 min
  4. Where a Redis Cache Fits14 min
Auth and the API Contract5 lessons

Login as a round trip across all three layers, guarding both routes and rows on the server, REST resources and status codes, CORS when client and server live on different origins, and one error shape checked at every layer.

  1. The Login Round Trip15 min
  2. Guarding Routes and Rows14 min
  3. Resources, Verbs and Status Codes14 min
  4. CORS: When Client and Server Live Apart14 min
  5. One Error Shape, Checked at Every Layer15 min
Deploying the Full App4 lessons

Configuration that lives in the environment, the shape of a small production setup on a Linux server with DNS, a reverse proxy and a private database, layers that restart and watch the app, and a pipeline that tests and ships every change.

  1. Config Lives in the Environment13 min
  2. The Shape of a Production Setup15 min
  3. Keeping It Running14 min
  4. Ship on Every Push15 min
Guided Build: Sprout, End to End3 lessons

Put every layer together on one app: a one-page plan from stories to tables, routes and screens, a walking skeleton that reaches production early, and features added as vertical slices that each ship on their own.

  1. Plan the App on One Page14 min
  2. The Walking Skeleton15 min
  3. Grow in Vertical Slices16 min