> Source URL: /unit-3/project-paths/duward-a/duward-a-2026-04-14.guide
# Duward's Project Guide

**Project:** GPT Workout Planner
**Category:** Productivity / AI
**Last updated:** April 14

---

> Note: This guide is created based on the latest state of your project repository + any notes from our discussion. It may not always reflect the most up-to-date information.

## Where You Are

You have one of the stronger specs in the class: "GPT Workout Planner" has a clear description, specific MVP features (workout generation by goal, workout categories, reasonable suggestions, memory via file I/O), and thoughtful stretch goals. Your inspiration (the Liftoff app) gives good context for what you're going for.

You also have a good project structure started -- `main.py` exists (though it's just a hello world for now) and you have `workouts/options.json` and `workouts/previous_workouts.json` set up, which shows you're thinking about data storage.

What's missing:

- **No pyproject.toml** -- Your project hasn't been initialized with `uv`, so OpenAI isn't installed yet.
- **Journal** -- Your journal entry is still empty.
- **No working feature yet** -- `main.py` just prints "Hello FURMAN!!!!"

## Next Steps (Before Tomorrow 3pm)

1. **Scaffold your project.** Use this prompt:

   ```text
   Read my project.spec.md. Set up my project: initialize uv,
   install the openai package, and update main.py to be a starting
   point for my workout planner. Keep the existing workouts/ folder
   structure with options.json and previous_workouts.json.
   ```

2. **Get one tiny slice working.** A good first slice: ask the user for their goal (e.g. "build muscle" or "lose weight"), call the OpenAI API with that goal, and print a simple workout suggestion. Don't worry about file memory yet -- just get the API call working.

   ```text
   Help me build the smallest possible first feature: ask the user
   for a fitness goal, send it to the OpenAI API, and print a
   workout suggestion. Keep it simple -- just a terminal interaction,
   no file I/O yet.
   ```

3. **Write your journal entry.** Fill in the Checkpoint 1 section of `project.journal.md` -- what you've done, what's next, any blockers.

4. **Commit and push.**

## Checkpoint 1 Readiness

By Thursday April 16th at 3pm, you need:

- [x] Completed `project.spec.md`
- [ ] Project initialized with `uv` and dependencies installed
- [ ] A basic scaffolding that runs
- [ ] One tiny working feature (e.g. ask for a goal, get a workout from OpenAI)
- [ ] First journal entry in `project.journal.md`
- [ ] Everything committed and pushed to GitHub

## Helpful Resources

- [Prompt Engineering Guide](../../resources/prompt-engineering.guide.md) -- useful for crafting your OpenAI prompt
- [Checkpoint 1 Instructions](../../projects/final-project-checkpoint-1.project.md) -- the full checkpoint requirements


---

## Backlinks

The following sources link to this document:

- [April 14 -- Checkpoint 1 prep](/unit-3/project-paths/duward-a/duward-a.path.llm.md)
