# Getting started with Spriteoven

> 🥐 Five minutes from sign-up to your first exported sprite sheet.

---

## 1. Sign up

Spriteoven is free. Click **Sign in** in the top right corner of the app
and pick one of three paths:

- **Email + password** — fastest if you want a stable login.
- **Magic link** — drop your email, we send a one-tap sign-in link.
- **Google** — single click via OAuth.

No credit card. No "free trial" countdown. Free tier stays free.

---

## 2. Generate your first sprite

Open the **⚒️ Forge** tab (or **🧪 Sprite Lab** for advanced flows) and
type a prompt. A good first prompt is concrete:

> "16-bit knight, blue cloak, holding a torch, idle pose"

Click **Generate**. Spriteoven runs the model, post-processes the
result (chroma key, palette quantize, bbox validation), and shows you
the canonical character sheet. From there you can:

- Generate idle / walk / attack / hurt / death animations against the
  same canonical reference.
- Quantize to a custom palette (PICO-8, NES, your own).
- Export to your engine of choice (next section).

For tilesets, use the **🗺️ Mapas** tab; for items, use **🎒 Items**.

---

## 3. Upgrade to Premium (BYOK) {#byok-verification}

> ⚠️ **Para usar GPT Image 2 con BYOK, tu organization OpenAI debe
> estar verificada.**
> OpenAI requiere verification (vía Persona, government-issued ID)
> antes de poder llamar al modelo gpt-image-2 — incluso para
> usuarios enterprise. Esto es one-time y toma 5-30 min.
>
> 1. Andá a [OpenAI Platform → Settings → Organization → General](https://platform.openai.com/settings/organization/general).
> 2. Click "Verify Organization".
> 3. Subí tu DNI / pasaporte. Esperá 5-30 min para propagación.
>
> Si NO querés hacer verification, podés usar el **free tier de
> Spriteoven** (Nano Banana 2) sin requirement adicional.

Free tier runs on **NB2 (Gemini, gratis)** — solid quality, zero cost.
For higher-fidelity sheets and more consistent silhouettes, switch to
**GPT Image 2** by bringing your own OpenAI API key:

1. Go to <https://platform.openai.com/api-keys> and create a new secret key.
2. In Spriteoven, click **🔑 API Key** in the header.
3. Paste your key, click **Validate**. We send one zero-cost ping to
   OpenAI to confirm the key works, then store it browser-side only —
   never on our server, never in our database.

You pay OpenAI directly. Approximate cost per sheet at current rates:

| Output | Approx cost |
|---|---|
| Single canonical character sheet | $0.03 – $0.05 |
| Animation set (5 actions × 4 frames) | $0.18 – $0.22 |
| 4×4 tileset (16 tiles) | $0.04 – $0.07 |
| 32-icon iconpack | $0.10 – $0.14 |

Spriteoven charges nothing on top while in beta.

> 📊 **Rate limits OpenAI Tier 1**: 5 imágenes/minuto. Para uso
> intenso (>50 sheets/sesión), considerá upgradear a Tier 2 cargando
> $50 USD acumulado en OpenAI billing (después de 7 días). Tier 2
> da 20 imgs/min — 4× throughput.

---

## 4. Outputs explained

When you click **Export**, you can pick from four formats:

- **`png-sliced`** — A folder of individual frame PNGs plus a manifest
  JSON. Pick this for Aseprite import or generic 2D engines.
- **`tres`** — Godot 4 `SpriteFrames` resource (`.tres`) with all
  animations defined. Drop into a Godot project and assign to an
  `AnimatedSprite2D`.
- **`aseprite-bundle`** — A `.zip` with the source `.aseprite` file
  plus pre-rendered PNGs. Pick this if you want to hand-tune frames
  before shipping.
- **`godot-bundle`** — A full Godot subproject `.zip`: scene file
  (`.tscn`), `SpriteFrames.tres`, and a sample script. Drag-drop import.

> **Tip**: when in doubt, pick `godot-bundle` for Godot or
> `aseprite-bundle` for everything else. They're the most "drop-in".

---

## 5. Next steps

- **Tilesets** — Open the **🗺️ Mapas** tab to generate seamless
  tilesets with auto-tile rules. Choose tile size (16×/32×/64×/96×) and
  pixel-perfect edge validation runs automatically.
- **Iconpacks** — **🎒 Items** generates batched icons with consistent
  silhouettes (weapons, shields, consumables, key items).
- **Batches** — kick off long jobs and get an email when they're done
  via the `/batch` endpoint (paid tier only).
- **Projects** — group your generated assets into named projects
  synced across browsers. Opt in by signing in.

---

## Troubleshooting

| Problem | Fix |
|---|---|
| "Sign in" button missing | Hard refresh — the SDK loads from CDN |
| Magic link email not arriving | Check spam; Supabase sends from `noreply@mail.supabase.io` |
| BYOK key shows "invalid" | Re-create on platform.openai.com — old keys revoke after rotation |
| Tileset edges don't match | Re-run with **strict edges** toggle on |

---

*Stuck? Email Fer at <fergonllan@gmail.com> — there's a small inbox and
I read every message.*
