gamma-local-dev-loop

SKILL.md

Gamma Local Dev Loop

Overview

Configure an efficient local development workflow with hot reload and mock responses for Gamma presentation development.

Prerequisites

  • Completed gamma-hello-world setup
  • Node.js 18+ with nodemon or tsx
  • TypeScript project (recommended)

Instructions

Step 1: Install Dev Dependencies

set -euo pipefail
npm install -D nodemon tsx dotenv @types/node

Step 2: Configure Development Script

Add to package.json:

{
  "scripts": {
    "dev": "tsx watch src/index.ts",
    "dev:mock": "GAMMA_MOCK=true tsx watch src/index.ts"
  }
}

Step 3: Create Mock Client

// src/gamma-client.ts
import { GammaClient } from '@gamma/sdk';

const isMock = process.env.GAMMA_MOCK === 'true';

export const gamma = isMock
  ? createMockClient()
  : new GammaClient({ apiKey: process.env.GAMMA_API_KEY });

function createMockClient() {
  return {
    presentations: {
      create: async (opts) => ({
        id: 'mock-123',
        url: 'https://gamma.app/mock/preview',
        title: opts.title,
      }),
    },
  };
}

Step 4: Set Up Environment Files

# .env.development
GAMMA_API_KEY=your-dev-key
GAMMA_MOCK=false

# .env.test
GAMMA_MOCK=true

Output

  • Hot reload development server
  • Mock client for offline development
  • Environment-based configuration
  • Fast iteration cycle

Error Handling

Error Cause Solution
Watch Error File permissions Check nodemon config
Mock Mismatch Mock out of sync Update mock responses
Env Not Loaded dotenv not configured Add import 'dotenv/config'

Examples

Watch Mode Development

set -euo pipefail
npm run dev
# Changes to src/*.ts trigger automatic restart

Offline Development with Mocks

set -euo pipefail
npm run dev:mock
# Uses mock responses, no API calls

Resources

Next Steps

Proceed to gamma-sdk-patterns for advanced SDK usage patterns.

Weekly Installs
17
GitHub Stars
1.6K
First Seen
Feb 18, 2026
Installed on
codex17
opencode16
gemini-cli16
antigravity16
claude-code16
windsurf16