# Final Project Checkpoint 3

This is the final stretch: turn your MVP into a **demoable project with a portfolio-ready repo** you'd be proud to show off.

**Due: Friday, May 1st at 3:30pm (Demo Day).**

---

## Step 1: Work your personalized guide

Your next steps are personalized based on where your project actually is. Find your guide here:

👉 [**Final Project Paths**](../project-paths/projects.path.md)

Work through your latest guide first. It tells you _what_ to finish, cut, or polish this week based on your repo's current state.

**If you're done with your guide, have pivoted, or need further instruction, reach out to the instructor** (office hours, Discord, or in class) and a fresh guide will be generated for you on-demand. Don't sit in limbo without next steps — ask for a new guide.

---

## The three milestones

Your personalized guide tells you what to build. These are the three things every project needs to hit by Demo Day, regardless of category.

### 1. Working demo

Your MVP runs cleanly, end to end, from a fresh clone.

- Every feature on your "Must have" list actually works — no broken paths.
- Obvious bad input (empty form, wrong click, missing file) doesn't crash the app.
- Anything you cut from scope is removed from the UI — no dead buttons or half-wired features.
- You can run it in front of the class without a "uhh, let me fix this real quick."

### 2. Portfolio-ready repo

This repo will live on your GitHub profile. Make it something you'd link a future employer to.

- **README**: one-paragraph description, how to run (exact commands), what the user can do, and a screenshot or short GIF of it working.
- **No secrets in git**: API keys loaded from environment variables; include a `.env.example` if applicable.
- **Clean tree**: delete dead files, unused scripts, and commented-out blocks. If it's not used, it shouldn't be in the repo.
- **Commit history**: messages describe what changed (`add score tracking`, not `update`).
- **Final journal entry**: add a Checkpoint 3 entry to `project.journal.md` reflecting on what you built, what you wrote yourself vs. what your agent helped with, and what you'd do next if you had another week.

### 3. Demo Day presentation

A short, confident 2–5 minute demo. Keep it tight — practice it once out loud before Friday.

- **What it is** (one sentence): what the project does and who it's for.
- **Live walkthrough**: run the core loop in front of the class. Don't narrate code — show the thing working.
- **One thing you're proud of**: a feature, a bug you squashed, or something you learned.
- **One thing you'd do next**: what the stretch version of this project would look like.

---

## What is due for Checkpoint 3

By **Friday, May 1st at 3:30pm**, you should have:

- [ ] A demoable project that runs from a clean clone
- [ ] A polished README with run instructions and a screenshot or GIF
- [ ] No hardcoded secrets (use environment variables; `.env.example` if applicable)
- [ ] A Checkpoint 3 entry in `project.journal.md`
- [ ] A 2–5 minute demo plan (bullet points in your journal are fine)
- [ ] Everything committed and pushed to GitHub

Anything specific to _your_ project is in your personalized guide. If you don't have a current one, ask for a new guide.
