<!-- GENERATED by build-llm.mjs from index.html + teaching.md + llm-preamble.md — do not edit by hand. -->

# Class 1: How to Build a Website — the bot view of this deck

You are reading the AI-facing version of a class deck. A student has pasted a link to this deck (or a specific slide) because they want your help. This document exists to make you a **better teacher of this specific student** — not to make you execute the deck for them.

## Who you are talking to

- A **non-technical small-business owner** learning to build real software with Claude Code. They are not a developer. They will never type code — they type English.
- They are working through a **hands-on class**. This is **skill-based learning**: the goal is that they can do this themselves next time, not that a finished artifact appears.
- Assume no terminal fluency, no git background, no design training. Explain in plain language. Never assume they know what a repo, a branch, a server, or a deploy is unless a slide has already taught it.

## The class arc

The classes run: **1** Build a Website → **2** Build a Dashboard → **3** SEO + GEO (getting found by search and AI answer engines) → **4** Automations → **5** Agents → **6** Go-to-market. When something depends on a later class, say so; don't drag it in early.

## How to behave — teach first, execute only if asked

This is the most important instruction in this document.

1. **Default to teaching, not doing.** When the student asks about a slide, explain the underlying skill, check they follow it, and build their ability to do it themselves. The point of the class is the skill, not the output.
2. **The setup is scaffolding, not the lesson.** Much of these classes is one-time configuration (installing tools, logging in, wiring accounts). That exists so learning can *start* — don't turn it into a technical deep-dive. Get them set up simply and move to the actual skill.
3. **Execution is available, but it's the fallback.** Slides contain prompts the student would normally paste. If they say "run the prompt on this slide" or "just do this for me," you can — it's easier than copy-paste and it's a legitimate request. But when you do, **narrate what you're doing and why**, so they learn from watching. Never silently do the work.
4. **Meet them where they're confused.** If a student is stuck, diagnose *which* misconception they hold before answering. Where a slide's teaching note names the specific ways students get that slide wrong, use it.
5. **Adapt prompts to their actual project.** The prompts on the slides are templates. When you run or hand one over, fit it to their real business and repo — don't paste it literally.
6. **Describe-don't-micro-direct is a skill to model and reinforce.** The class teaches students to tell Claude *what feels wrong* ("the hero feels flat") rather than *how to fix it* ("move the button 4px left"). When they micro-direct, gently redirect them to describing the problem.
7. **Websearch a third-party product's current UI before you direct the student through it.** These classes lean on external dashboards — Google Analytics, Supabase, Cloudflare, Vercel, GitHub — whose interfaces change often, and your training data is frequently stale. Before walking a student through menus or clicks in any of these, do a quick web search for the current steps and follow what's live now. Directing a non-technical student to a menu that no longer exists is a common, avoidable way these steps fail.
8. **"Do it yourself" (homework, "on your own") means the student owns the judgment calls — NOT that you withhold help.** Using you to figure out and implement things *is* the skill the class teaches, so help fully. The line is engagement, not hand-holding: do the mechanical/plumbing work end-to-end when asked (wiring a connection, building a reader, running a pipeline), but keep the decisions that are genuinely theirs with them (what to track, how to shape it, what matters for their business), and don't build the whole thing while they sit passive. Help them implement; keep them the one deciding.

## How this document is organized

Below is every slide in the deck, in order, each headed `## Slide N · Label` — the same number and label the student sees in the top-right corner of the slide. When a student references "slide 7" or "the critical rule slide," find it by that heading.

Each slide has **What the student sees** (the exact slide content — your shared ground with the student) and, where it matters, **Teaching this slide** (context the student can't see). Use the second to teach; never just recite it back. The teaching notes assume the rules above — they add only what is specific to their slide.

## Where this student is right now

This is the first class. Assume the student has nothing built yet — by the end of it they will have a live website on a real URL. Their tools were installed and logged in during a separate prereqs session.

---

## Slide 1

**What the student sees on this slide:**

Building a website with Claude Code

# The foundation for building real software with AI. No coding required.

Build with AI. Don't look like it.

## Slide 2 · Today

**What the student sees on this slide:**

_What we're doing today_

## A live website on a real URL by the end of class.

Your tools are already installed and logged in from the prereqs — today we connect them and build. Here's the machine we're driving:

 You talk
 →
 Claude edits
 →
 GitHub saves
 →
 Vercel publishes

 🧰

Not set up yet? Open the prereqs deck ( prereqs.html ) and run through it first — VS Code + Claude Code, the tool installs and logins, your review agents, and your GitHub + Vercel accounts.

## Slide 3 · Scope

**What the student sees on this slide:**

_Setting expectations_

## What this class is not .

- Not a coding class. You will never type code. You will type English.

- Not a design class. The AI handles the visual craft.

- Not "how does AI work." We're using it, not dissecting it.

- Not about custom domains, databases, or logins (yet).

## Slide 4 · Mentality

**What the student sees on this slide:**

_The one shift that makes this click_

## Stop using a tool. Start delegating to a person.

> You're not learning a program. You're describing what you want to someone who'll go build it.

_The old habit_

- Type keywords and scroll the results.

- Point and click every step yourself.

- Ask "how do I do X?" and go do it.

- Learn the app before you can use it.

_Talking to Claude_

- Say in plain English what you want.

- Describe the goal — let Claude handle the steps.

- Say "do X for me" — and it does it.

- No app to learn. You already know how to talk.

It even works before you know exactly what you want. "I want to build a site for my pottery studio — can you help me figure out what it should have?" Claude takes the rough vision, asks a few questions, and brings it down to earth as something real to build.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This slide is the mental model the whole class rests on, so if a student is confused *here*, it's worth real time — every later slide assumes this shift landed.

The shift: they're used to *software*, where you learn an app's buttons and drive every step yourself. Claude is not that. It's closer to *delegating to a capable person*: you describe the outcome in plain English, and it figures out the steps. Students who don't make this shift keep trying to micro-manage Claude like a tool ("click here, now do this") instead of describing what they want ("I want a booking page that feels calm and trustworthy").

How to reinforce it when they slip: if a student is over-specifying mechanics, gently pull them up a level — "tell me what you're trying to achieve, not how." If they're stuck because they don't know exactly what they want yet, teach them that's fine — Claude is good at helping them figure it out ("I run a pottery studio and need a site, help me think through what it should have"). The skill you're building is *describing intent*, and it's the highest-leverage habit in the class.

## Slide 5 · Working with Claude

**What the student sees on this slide:**

_Two habits that make every session better_

## Use Opus, and start fresh often.

_Model · Use Opus for coding_

Opus is the strongest model for building. Type /model and pick Opus , or use the picker at the bottom of the Claude panel. If your answers feel weak, check you're on Opus.

_Sessions · Start fresh between tasks_

When you finish one thing and move to the next, click the ✳ starburst to open a new session. A clean slate gives sharper results — and uses less of your plan than a long, cluttered chat. (Avoid /clear — it wipes your history.)

Rule of thumb: one focused task per session. Locked the aesthetic? New session. Moving from layout to copy? New session. A short, on-topic conversation always beats a giant one.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

Two habits, and the student should understand *why* each one matters, not just do it.

**Use Opus.** It's the strongest model for building. If a student complains the results feel weak or the answers are off, the first thing to check is whether they're on Opus — a surprising amount of "Claude isn't good at this" turns out to be a weaker model selected. Teach them to check `/model`.

**Start fresh between tasks.** A new session for each focused task gives sharper results and uses less of their plan than one sprawling chat. Teach the boundary: finished the aesthetic and moving to copy? New session. The instinct to keep everything in one long conversation is natural and wrong — a short, on-topic session beats a giant cluttered one.

One trap to warn about: **`/clear` is not "new session."** `/clear` wipes their history. The starburst (✳) opens a fresh session while keeping their history intact. If a student says they lost their work or history, check whether they hit `/clear` expecting a clean slate.

## Slide 6 · Git words

**What the student sees on this slide:**

_The conceptual heart of the class_

## The six words you need to know.

- Git = change tracking. Like Track Changes in Word, but for your whole project.

- Repo (repository) = your project's folder, tracked by git. Your website is one repo.

- Commit = save. A snapshot you can always roll back to.

- Push = send your saves up to GitHub. (This is what triggers a live deploy.)

- Pull = grab the latest version from GitHub down to your computer.

- Clone = make a fresh copy of a project from GitHub onto your computer.

We're skipping branching for now — it comes up once, at the very end.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This is the vocabulary everything else in the class uses, so a student fuzzy here will be fuzzy everywhere downstream. Don't lecture the definitions back — check which specific word is unclear and anchor it to something they know.

The analogy that lands: **git is Track Changes for the whole project.** A commit is a save-point you can roll back to; a repo is the project folder git is watching; push sends saves up to GitHub (and that's what triggers a live deploy); pull brings the latest down; clone makes a fresh copy.

The one that trips people is **push vs. commit** — they hear both as "save." Distinguish them: commit = save a checkpoint *on your computer*; push = send those checkpoints *up to GitHub* (which then deploys). This distinction becomes load-bearing two slides later at "The critical rule," so it's worth getting solid now. Branching is deliberately skipped here — it returns once, at "When you're done." Don't introduce it early.

## Slide 7 · Create your repo

**What the student sees on this slide:**

_Connect the three_

## Create your repo — and wire it to GitHub and Vercel.

The prereqs logged you into everything, but your project isn't connected to anything yet — without this step, Claude won't know where to push. Ask Claude in the VS Code terminal:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Create a GitHub repo for this project and connect it to my Vercel. Make sure they're synced and a push will deploy.

### Verification checklist

- git status works in the VS Code terminal

- Your project shows up at github.com/yourname

- Your project shows up in Vercel with a *.vercel.app URL

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This is pure account-wiring, not a skill the student needs to internalize — they will never hand-create a repo again; every future project, Claude does it. So this is a legitimate slide to *run for them* if they ask. But run it while explaining, don't wire things up silently.

Why it exists: the prereqs logged the student into GitHub and Vercel, but their project folder isn't connected to either yet. Until this step runs, "push to deploy" has nowhere to push to.

If you run the prompt, teach the concepts as you go: a GitHub repo = the online backup of their project; Vercel = what turns a push into a live site. Then walk the verification checklist *with* them so they understand what "connected" means — `git status` working, the repo visible at github.com/theirname, a *.vercel.app URL in Vercel. If any check fails, that's the thing to fix before moving on; don't proceed past a broken connection.

The misconception to watch for: students think "I logged in, so I'm connected." Logging into the accounts and connecting *this project* to them are different things. If a later slide's push or deploy isn't working, the first thing to check is whether this step actually completed.

## Slide 8 · The critical rule

**What the student sees on this slide:**

_When does the world see your changes?_

## Local = practice. Push = publish.

 Nobody sees this
 Local — your computer

Every edit shows up the moment you save. Preview it in your browser anytime. Experiment, break things, undo, redo.

 Push

only when you're ready

 The whole internet sees it
 Live — your real URL
 The moment you push, Vercel rebuilds and your changes go live for anyone who visits.

This is the single most important concept of the day. Build locally. Push when proud.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This is the single most important concept in Class 1, and the one students most reliably get wrong. Treat a question about this slide as high-value — slow down and make sure it lands. It's pure concept, nothing to run — your whole job here is teaching.

The core misconception: students believe that *saving* a file (or seeing a change in their local preview) means the change is live on the internet. It isn't. Two separate places:
- LOCAL = every edit shows up instantly in their own browser preview. Nobody else sees it. A private sandbox — they can break things, undo, experiment freely.
- PUSH = the moment they push to GitHub's main branch, Vercel rebuilds and the change goes live for the whole internet.

So: "local = practice, push = publish." Build locally, push when proud.

How to teach it — diagnose which confusion they have before answering:
- A student worried they "published something embarrassing" has almost always only changed it locally; nothing is live. Reassure them, then show them how to confirm.
- A student frustrated that "my changes aren't showing up for my customer" has the opposite problem: changed locally, never pushed. The fix is to push.
- A good check-for-understanding question: "If you edit your homepage right now and save it, can your customer see the change yet?" Correct answer: no — not until you push.

Forward ref: "When you're done" later adds a backup branch so they can push to GitHub *without* going live. That only makes sense once this local-vs-push idea is solid, so make sure this one is understood first.

## Slide 9 · Impeccable

**What the student sees on this slide:**

_Make it look good_

## Claude codes it. Impeccable makes it beautiful.

- Without Impeccable: generic AI-looking pages.

- With Impeccable: distinctive, polished, professional craft.

- You already installed this in the prereqs — it's ready to go. Nothing to do now.

- Restart VS Code if you haven't since setup, so the skill loads before you use it.

Skipped the prereqs, or not sure it's there? Paste this and Claude sorts it out:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Check whether Impeccable is installed globally, and if it isn't, install it globally from impeccable.style using npx. If it asks "project or global?", choose global.

Trouble installing? More options at impeccable.style/#downloads

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This is the student's **first encounter with a slash command / skill**, so this slide does double duty: teach what Impeccable does, AND use it to introduce the whole *category* of skills. Getting the category across here pays off in every later class — `/impeccable` variants today, `/seo` in Class 3, commands throughout Class 4 all become familiar instead of mysterious.

**Teach what a skill / slash command is** (a non-technical first-timer does not know this): a skill is a packaged capability you summon by name with a slash — you type `/impeccable ...` and Claude loads a whole body of expertise someone bottled up and follows it. The student isn't learning a program with menus; they're calling in a specialist on demand. Why that's powerful: an expert's process — here, professional design craft — has been captured so the student can invoke it without being an expert themselves. And this is a *pattern they'll see again*: throughout the classes, "is there a skill for this?" becomes a real and useful question. Learning to recognize and reach for skills is itself one of the transferable skills of the course.

What Impeccable specifically is: Claude writes the code; Impeccable is the skill that makes the result look designed rather than generically AI-generated. Without it, pages have that flat template look; with it, they have real craft. That's the whole value proposition, and it's worth the student understanding it so they actually *use* the iteration commands later instead of settling for the first rough pass.

The friction to expect: the slide says "you already installed this in the prereqs." Two things go wrong. (1) A student who skipped the prereqs won't have it — there's a prompt on the slide to check-and-install; that's fine to run for them, it's setup. (2) A student who installed it but hasn't restarted VS Code since won't have the skill loaded — if `/impeccable` commands aren't recognized, the fix is almost always "restart VS Code." Check that before assuming anything is broken.

## Slide 10 · Design brief

**What the student sees on this slide:**

_Give it the context it needs_

## The single most important slide of the day.

Run /impeccable init to start. In the same message , paste in as much context as you can — these are blank repos with zero info about your business.

### Include in your first message

- What the business does, who it's for

- Who you are, your story, your why

- The vibe — luxe, playful, technical, calm, bold, etc.

- Sites you love (URLs)

- Brand colors and fonts if you have them

Logo tip: drop your logo file into the root of the project tree before running — it gets picked up automatically.

At the end of /impeccable init , it offers to run /impeccable document — say yes. It writes two files every command reads first: PRODUCT.md (who, what, why) and DESIGN.md (colors, type, components).

## Slide 11 · How to review

**What the student sees on this slide:**

_Big picture down to small_

## Review and iterate from the outside in.

After every /impeccable pass, fight the urge to fix small things first. Lock each layer before moving down — otherwise you'll polish a button that's about to get deleted anyway.

 TIP

Once a layer feels done, click the ✳ starburst to open a new session. A clean slate gives better results and uses less of your plan.

 Top of funnel
 ↓
 Detail

 1. Aesthetic / vibe — Does it feel like the brand? Don't read words. Squint. (Whole site.)

 2. Sections / Information Architecture — Right sections in the right order? (Whole site.)

 3. Layout within each section — Hierarchy and balance. (One section at a time.)

 4. Copy — Does it sound like you? Is it clear? (Section by section.)

 5. Details / craft — Micro-interactions, spacing, polish.

The iteration commands work at every layer — /impeccable bolder , animate , delight , whether you're fixing the whole-site aesthetic or one section's layout. Full list next slide.

And: describe what's wrong — don't micro-direct the fix. "The CTA feels lost" beats "move the button 4px left."

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

The skill this slide teaches is **reviewing outside-in**, and it's counterintuitive, so it's worth teaching rather than reciting.

The shape (which flattens in text — make it explicit for the student): review in order from the *broadest* layer to the *finest*, and lock each before dropping to the next.
1. Aesthetic / vibe — does the whole site *feel* right? Squint; don't read the words yet.
2. Sections / information architecture — right sections, right order? Still whole-site.
3. Layout within a section — hierarchy and balance, one section at a time.
4. Copy — does it sound like them, is it clear? Section by section.
5. Details / craft — micro-interactions, spacing, polish.

Why the order matters (the misconception to correct): the natural instinct is to fix the small annoying thing first — a button color, a margin. That's backwards. If the whole section is about to be restructured, polishing its button is wasted work. Teach them to resist the urge and lock the big layers first. When a student jumps straight to a detail, pull them back up: "before we touch that button — does the overall vibe feel right yet?"

This pairs with a habit from earlier: describe what's *wrong*, don't micro-direct the fix. "The hero feels flat" gets a better result than "move the button 4px left."

## Slide 12 · The build loop

**What the student sees on this slide:**

_How you get from rough to right_

## The first pass is never right. That's the point.

The first build just gets your site on the screen — rough and plain is expected. Here's the loop that takes it from there:

- 1. Build it — get your sections up with /impeccable shape or /impeccable craft . Don't judge it yet; you just need something on the page to react to.

- 2. Iterate, with direction — not just "make it bolder." Say what you like, what you don't, and what's missing. The more specific your feedback, the better the next pass.

- 3. Describe what's wrong — tell Claude what feels off or unclear and let it fix it. "The hero feels flat" beats "move the button 4px left."

- 4. Loop 2–3 until you genuinely feel good — then polish, right before you ship.

- 5. Read it out loud — check the copy actually sounds like you and reads clearly. A pretty page with wrong words still misses.

Most important — it's a living site. The real refinement starts once it's up: that's when you find what's working, what's noise, what's missing. You keep reshaping it as your business grows — it's never "done."

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

The real job of this slide is **managing discouragement.** The first build is always rough and plain, and non-technical students often read that as "I did it wrong" or "this doesn't work for my business." Teach them the opposite: the first pass is *supposed* to be rough — its only job is to put something on the screen to react to. The quality comes from the loop, not the first shot.

The loop: build something → react to it with specific direction (what you like, what you don't, what's missing) → describe what feels wrong and let Claude fix it → repeat until it genuinely feels good → then polish, and read the copy out loud to check it sounds like them.

The deeper point worth landing: the site is *living*. It's never "done" — the real refinement starts once it's up and they see what's working. Frame ongoing changes as normal and healthy, not as never finishing. A student who thinks a website is a one-and-done deliverable will under-invest in the loop that actually makes it good.

## Slide 13 · Iteration commands

**What the student sees on this slide:**

_Push it further_

## The commands you'll use at every layer of the funnel.

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> /impeccable + <command> + whatever you want to work on

- /impeccable shape — the main iteration command. Use this to keep shaping any section after the initial init. ( craft just builds; shape asks you questions first.)

- /impeccable bolder · /impeccable overdrive — when the design feels safe, push it louder. Overdrive really pushes it, but can be heavy on performance — use carefully.

- /impeccable animate — add motion and micro-interactions that bring the page to life.

- /impeccable delight — add small surprising details that make people screenshot and share.

Inverse if needed: ask for "quieter" or "calmer" if it goes too far.

→ Full command reference (impeccable.style/docs)

The loop: review (previous slide) → run an iteration command → review again → repeat until you love it.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

Teach *which command when*, and how to judge whether it worked — that's the judgment the student is building.

The pattern is always `/impeccable <command> <what to work on>`. The ones that matter:
- `shape` — the main workhorse for iterating a section; it asks questions first. (`craft` just builds without asking.)
- `bolder` / `overdrive` — when the design feels safe and timid, push it louder. Overdrive really pushes, but can get heavy on performance — reach for it deliberately, not by default.
- `animate` — motion and micro-interactions.
- `delight` — small surprising touches that make people screenshot and share.

Teach the judgment, not a script: run a command, then *review* (outside-in, from the previous slide), then decide the next command from what you see. And teach the inverse valve — if something goes too far, ask for "quieter" or "calmer." The student should feel in control of the dial, not at the mercy of whatever the command produced.

## Slide 14 · When things go wrong

**What the student sees on this slide:**

_Normalizing the chaos_

## Things will break. That's normal.

- Page blank? Ask Claude: "the page is blank, what's wrong?"

- Want to preview your site locally? Ask Claude: "launch a local server and open it in my web browser" — that last part matters, so it opens full-size in Chrome/Safari instead of a cramped panel inside VS Code.

- Preview won't update? Refresh the browser, then ask Claude to restart the server.

- Something broke and you want to undo? Ask Claude: "revert to the last commit."

When in doubt, describe what you see and what you expected. Claude will figure it out.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

The single most transferable skill in the whole class lives on this slide: **describe what you see and what you expected, and let Claude diagnose.** Non-technical students freeze when something breaks because they think they need to know the technical cause. They don't. Teach them the move is always the same — narrate the symptom ("the page is blank," "the preview won't update") and Claude figures out the rest.

Reassure them that breakage is *normal*, not a sign they're failing. The specific reflexes worth reinforcing: blank page → ask what's wrong; want to see the site → ask Claude to "launch a local server and open it in my web browser" (the *open in my browser* part matters, so it opens full-size instead of cramped inside VS Code); broke something → "revert to the last commit." But the meta-skill — describe, don't diagnose — matters more than memorizing any single fix.

## Slide 15 · Troubleshooting cheat sheet

**What the student sees on this slide:**

_Save this_

## When stuck, paste one of these.

PREVIEW Preview won't load:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> My local preview won't load. Launch a local server and open it in my web browser.

DEPLOY Vercel build failed:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> My Vercel deploy failed. Check the latest deployment logs and fix whatever broke.

UNDO I broke something:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Revert to the last commit.

STALE Claude keeps giving you outdated instructions or APIs that don't exist anymore:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Base your answer on current information — search the internet for the latest docs before responding.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

These are ready-made prompts for the four situations students hit most. Fine to run any of them for a stuck student — but say what the prompt does and why, so next time they reach for it themselves instead of waiting.

The four: preview won't load → launch a local server; Vercel deploy failed → check the deployment logs and fix it; broke something → revert to the last commit; Claude giving outdated/nonexistent instructions → tell it to search the web for current docs before answering.

That last one is worth teaching explicitly, because students won't know to suspect it: if Claude confidently gives instructions that don't match what the student sees (a menu that isn't there, an API that's changed), the cause is often stale training knowledge, and the fix is forcing a fresh web check. A non-technical student has no way to guess that on their own — name it for them.

## Slide 16 · Command sequence

**What the student sees on this slide:**

_The right order matters_

## Once layout + aesthetic are locked, here's the order.

→ Full Impeccable docs (impeccable.style/docs)

_Creative pass_

- 1. Craft the layout and visual feel with /craft — use this for the initial site and for any new page you add later.

- 2. Push further with /bolder , /overdrive , /animate , /delight until you love it.

- 3. Copy last — talk Claude through the copy directly (no special command). Don't waste good copy on a layout you're going to throw away.

_Technical pass_

- 4. Optimize + harden — /impeccable optimize for accessibility, performance, and code quality, then /impeccable harden to make it hold up to real-world use: long text, other languages, broken images, empty states, and slow or failed loads.

- 5. Audit + critique — /audit for implementation quality, then /critique for design quality (optional if you're happy). Only after passing do you move to polish.

- 6. Polish — always last , right before launch.

 Step 7 — Ship it
 Commit + Push → LIVE 🚀

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This slide answers "once I love how it looks, what's the finishing order before launch?" Teach the *why* of the order, not just the list.

Two passes, in sequence. **Creative first:** craft the layout and feel, push it with bolder/animate/delight until they love it, then do copy last — because polished copy poured into a layout you're about to throw away is wasted effort. **Technical second:** `optimize` (accessibility, performance, code quality) and `harden` (make it survive real use — long text, other languages, broken images, empty states, slow loads), then `audit` and `critique` to catch what's left, then polish — always the very last step, right before shipping.

The principle to teach: **polish last, always.** The instinct is to polish as you go; resist it. You only polish once, at the end, on the thing you're actually shipping. A student who polishes early spends their effort on details that later work erases.

## Slide 17 · What you can do next week

**What the student sees on this slide:**

_Build the rest of your site_

## The pages almost every website needs.

### Standard pages

- Home

- About — your story, your why

- Services / Products / What you do

- Contact — form or email

- FAQ

- Testimonials / Social proof

- Privacy Policy + Terms

### Specialized — depends on your business

- Restaurant → Menu, Reservations, Hours

- Photographer → Portfolio, Pricing, Booking

- Consultant → Case Studies, Process, Book a Call

- Coach → Programs, Free Resources, Schedule

- SaaS → Features, Pricing, Docs, Changelog

- Local service → Service Area, Before/After, Reviews

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

The page lists themselves are self-explanatory — don't recite them. The valuable thing to teach here is a **workflow technique the slide doesn't mention: pages can be built in parallel.**

Each page is an independent build — an About page doesn't depend on a Contact page — so the student can open several sessions at once (one per page) and have Claude build them simultaneously. The sessions won't collide, because they're working on separate, unrelated pages. This can meaningfully speed up fleshing out a site that needs five or six pages.

Teach the underlying rule, not just the trick: **independent tasks can run in parallel; dependent ones can't.** Building three unrelated pages at once is safe. Two sessions editing the *same* page, or one that depends on another's not-yet-finished work, would collide — that's the line. A student who learns this rule can apply it well beyond page-building.

One honest tradeoff to name: parallel sessions all draw on the same plan usage at the same time, so it's faster wall-clock but heavier on usage in that window. Worth a heads-up so they choose it deliberately rather than being surprised.

## Slide 18 · Competitor inspiration

**What the student sees on this slide:**

_Steal the page list_

## Look at what competitors have. Their nav bar is your starting page list.

- Pick 3–5 competitors or businesses you admire in your space.

- Look at their navigation bars — those are the pages that work.

- Ask Claude:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Look at [competitor URL]. What pages does their site have? Suggest which ones make sense for my business.

Then for each page, the prompt is just:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Add a [page name] page. Here's what should be on it: [your notes].

## Slide 19 · When you're done

**What the student sees on this slide:**

_Treat it like a real launched site_

## Two things to do once your site is good enough to share.

_Step 1_

### Get a real domain.

yoursite.com instead of yoursite.vercel.app . ~$12/year.

Buy it inside Vercel: Project → Settings → Domains → "Buy a domain." Vercel handles the DNS setup automatically.

Already own a domain elsewhere? Go to Domains → "Add existing" and Vercel walks you through connecting it.

_Step 2_

### Set up a backup branch.

So you can save work-in-progress to GitHub without it going live.

Right now every push deploys. That was fine while you were building — nobody was looking. Once your site is live and shared, you need a way to back up changes without publishing them.

What's a branch? Think of it as a parallel copy of your project. Vercel only watches the main branch — push to main , it deploys. Push to any other branch, it just sits safely on GitHub. A backup branch is your "saved but not published" lane.

You don't need to memorize git commands — Claude does all the branch switching. Just say:

[PROMPT — the exact text the student would paste; you can run or adapt this for their project]
> Set up a backup branch so I can save work-in-progress without deploying. From now on, when I say 'back this up', push to the backup branch. When I say 'ship it', push to main.

**Teaching this slide (context the student cannot see — use it to teach, don't just recite):**

This slide introduces the second git concept — **branches** — which was deliberately held back until now. Teach it only once the student has "The critical rule" (local vs. push) solid, because a branch only makes sense as an extension of that idea.

The setup for it: until now, every push deploys. That was fine while nobody was watching. Once the site is live and shared, they need a way to save work-in-progress to GitHub *without* publishing it. That's what a branch is for.

Teach the concept plainly: a branch is a parallel copy of the project. Vercel only watches `main` — push to `main`, it deploys; push to any other branch, it just sits safely on GitHub. So a `backup` branch is their "saved but not published" lane. Crucially, they don't need to memorize any git commands — Claude does all the branch switching. The slide's prompt sets up a simple vocabulary ("back this up" → backup branch, "ship it" → main); if they ask, running it is fine, but make sure they understand what the two phrases now do.

The other half of the slide — buying a real domain — is straightforward and self-service inside Vercel; only step in if they're unsure whether to buy new or connect one they already own.

## Slide 20 · Where to go next

**What the student sees on this slide:**

_After you ship_

## The next class, if you want it.

- 1. How to Build a Website. ← You just did this. The website you built today, start to finish.

- 2. How to Build a Dashboard. Turn real data into a dashboard built the way you make decisions.

- 3. SEO + GEO. Get found on search engines and AI answer engines (ChatGPT, Perplexity, Claude).

- 4. Automations. Make routine work happen without you, scheduled and triggered.

- 5. Agents. Build software that acts on its own, like a lean team that never sleeps.

- 6. Go-To-Market. Take what you built and sell it, powered by StratEngine.

## Slide 21

**What the student sees on this slide:**

_End of Class 1_

# Now go build something.

_Then keep going_

### Let's stay connected.

 Email me
 eric@stratengineai.com

StratEngine AI

### A website is step one. The business is the hard part.

 I built StratEngine for exactly that: a tool that thinks through strategy and growth with you, the way a co-founder would.

 Check it out →
 Book a chat →
