# Start 3 1 1

> Module 3.1.1: Welcome & First Generation - Set up Gemini API and generate your first image with Nano Banana. Use when the student types /start-3-1-1.

- Skill: `carlvellotti/start-3-1-1-3` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add carlvellotti/start-3-1-1-3`
- Raw SKILL.md: https://api.skillmd.com/api/skills/carlvellotti/start-3-1-1-3/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: carlvellotti (https://skillmd.com/u/carlvellotti)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/carlvellotti/start-3-1-1-3

---


## Setup

Read `.cursor/SCRIPT_INSTRUCTIONS.md` and follow it for everything below.

ACTION: Silently stage bundled lesson assets without overwriting student work.

```bash
cp -rn .cursor/skills/start-3-1-1/assets/* . 2>/dev/null || true
```

# Module 3.1.1: Welcome & First Generation

**Teaching Script for Cursor**

---

## Teaching Flow

Welcome to Nano Banana!

I'm going to quote the course creator Carl here: "You aren't going to believe how fucking amazing this is."

He's right. We're going to use Gemini 3 Pro - also known as Nano Banana Pro - Google's most advanced image generation model. It can create photorealistic images, transform reference photos, generate text overlays, and so much more.

STOP: Are you ready to see what it can do?

USER: Yes / Ready

---

Before we generate anything, we need to set up your API key. This takes about 2-3 minutes and you only do it once.

First, go to Google AI Studio:

**https://aistudio.google.com/**

STOP: Open that link in your browser and let me know when you're there.

USER: I'm there

---

If this is your first time, accept the Terms of Service.

Then click **"Get API Key"** in the left sidebar. You'll see your projects - click **"Create API key"** to generate a new key.

Copy the key that appears - it starts with "AIza..."

STOP: Do you have your API key copied?

USER: Yes

---

Important: You also need to set up billing for Gemini 3 Pro to work.

Don't worry about cost - it's about $0.10 per image, and this whole course will cost less than $5 total. (This goes to Google, not to Carl... unfortunately.)

In Google AI Studio, go to **Settings** (bottom of the left sidebar) → **Plan information** → click **"Set up Billing"** next to your project.

This will redirect you to Google Cloud Console to link a billing account. Follow the on-screen instructions to add a payment method.

STOP: Is your billing set up?

USER: Yes / Done

---

Now let's add your API key to this project.

You need to create a file called `.env` in the project root with your API key. You have two options:

**Option 1:** Create it yourself - make a new file called `.env` and add this line:
```
GEMINI_API_KEY=your_actual_key_here
```

**Option 2:** Paste your API key here in chat and I'll create the file for you.

STOP: Let me know when you've created it yourself, or paste your key here and I'll do it.

USER: [Either confirms they made it, or pastes their API key]

---

ACTION (if they pasted their key): Create the `.env` file using a terminal command with "all" permissions:
```
echo "GEMINI_API_KEY=[their_key]" > .env
```
Note: The student will see a permission prompt - they need to click "Allow".

ACTION (if they made it themselves): Skip to "Perfect! You're all set up."

---

Perfect! You're all set up.

Now for the fun part - let's generate your first image.

I have a reference photo of Carl, the course creator. You can find it at `lesson-modules/3-nano-banana/3.1-intro-image-gen/3.1.1-welcome/carl-reference.JPG` if you want to see what you're working with. We're going to put him in a banana suit to welcome you to the course.

STOP: Say "Generate Carl in a banana suit welcoming me to Nano Banana"

USER: Generate Carl in a banana suit welcoming me to Nano Banana

---
This will take about 10-15 seconds

ACTION: Run generate() with reference image `carl-reference.JPG` and prompt: "Carl in a bright yellow banana suit, standing confidently with arms crossed, big friendly smile, ready to teach. Text overlay says 'Welcome to Nano Banana!' Professional course instructor vibe but fun and playful."

Your image has been saved to the `outputs/` folder - open it to see the result!

STOP: What do you think?

USER: Response about the image

---

Pretty incredible, right?

That's Gemini 3 Pro. It can take a reference photo and transform it while keeping the person recognizable. And because we're doing this in Cursor, I handle all the complexity for you:

- API calls
- Session management
- Saving outputs
- Picking smart parameters

Through this course, you'll build your own system of prompts, reference images, and styles. We'll start by covering general use and then move onto PM use cases in the next module.

STOP: Want to hear what's coming next in this module?

USER: Yes

---

Here's what we'll cover in Module 3.1:

- **Understanding the Basics** - how the generate() function works, available parameters, output structure
- **Consistency & Style** - using reference images, building a style database, extracting styles from existing images
- **Iteration Strategies** - sessions, refining images step by step, reverting when needed

Once you've got the fundamentals down, Module 3.2 will show you PM-specific use cases like mockups, personas, and diagrams.

STOP: Ready to continue to the next lesson?

USER: Yes / Ready

---

Great! In the next lesson, you'll learn how the `generate()` function works and all the options available to you.

Run `/start-3-1-2` when you're ready to continue.

ACTION: End module

---

## Important Notes for the AI

**File operations in this module:**
- Students can either create `.env` themselves OR paste their key for you to create it
- If creating for them: use terminal command with "all" permissions: `echo "GEMINI_API_KEY=[key]" > .env`
- Student will need to approve the permission prompt (this is expected - `.env` is protected)

**For the image generation:**
- Use the `generate()` function from `image_gen.py`
- Pass the reference image path and the exact prompt specified
- The output will be saved automatically to `outputs/`

**If something goes wrong:**
- Permission denied: Student needs to approve the "all" permissions prompt
- API key errors: Have them re-paste their key and recreate the `.env` file
- Billing errors: Confirm billing is set up in Google AI Studio settings
- Generation fails: Check the error message and troubleshoot accordingly

---

## Success Criteria

Module 3.1.1 is successful if the student:

- ✅ Has their Gemini API key set up in `.env`
- ✅ Has billing configured in Google AI Studio
- ✅ Generated their first image (Carl in banana suit)
- ✅ Understands what they'll learn in this module
- ✅ Knows how to continue to the next lesson

---

**Remember: This is the student's first taste of image generation. Make it magical. The "wow" moment with that first generated image sets the tone for the entire module.**


ACTION: Before wrapping up, record this lesson as complete by running this WITHOUT NARRATING the raw output:

```bash
fspm progress complete cursor-pms-3-1-1
```

If it fails because the fspm CLI isn't installed, follow the teaching rules' missing-CLI guidance: tell the learner progress tracking needs the FSPM CLI, offer to install it, and continue the wrap-up either way.

Then close out with the student's options, in natural language (never as a command list):

- Mention they can leave feedback on this lesson anytime — if they have some, collect it conversationally and submit it with the CLI (see teaching rules).
- Remind them, briefly and only if it fits the moment, that they can always ask for a recap, a quiz on what they just did, a saved note, or where they stand in the course.
- End with the next step: when you're ready for the next lesson, use `/clear` first, then:

`/start-3-1-2`

