gamma-deploy-integration
SKILL.md
Gamma Deploy Integration
Overview
Deploy Gamma-integrated applications to various cloud platforms with proper configuration and secret management.
Prerequisites
- Completed CI integration
- Cloud platform account (Vercel, AWS, or GCP)
- Production Gamma API key
Instructions
Vercel Deployment
Step 1: Configure Vercel Project
set -euo pipefail
# Install Vercel CLI
npm i -g vercel
# Link project
vercel link
# Set environment variable
vercel env add GAMMA_API_KEY production
Step 2: Create vercel.json
{
"framework": "nextjs",
"buildCommand": "npm run build",
"env": {
"GAMMA_API_KEY": "@gamma_api_key"
},
"functions": {
"api/**/*.ts": {
"maxDuration": 30
}
}
}
Step 3: Deploy
# Preview deployment
vercel
# Production deployment
vercel --prod
AWS Lambda Deployment
Step 1: Store Secret in AWS Secrets Manager
aws secretsmanager create-secret \
--name gamma/api-key \
--secret-string '{"apiKey":"your-gamma-api-key"}'
Step 2: Lambda Configuration
// lambda/gamma-handler.ts
import { SecretsManager } from '@aws-sdk/client-secrets-manager';
import { GammaClient } from '@gamma/sdk';
const secretsManager = new SecretsManager({ region: 'us-east-1' });
let gamma: GammaClient;
async function getGammaClient() {
if (!gamma) {
const secret = await secretsManager.getSecretValue({
SecretId: 'gamma/api-key',
});
const { apiKey } = JSON.parse(secret.SecretString!);
gamma = new GammaClient({ apiKey });
}
return gamma;
}
export async function handler(event: any) {
const client = await getGammaClient();
const result = await client.presentations.create({
title: event.title,
prompt: event.prompt,
});
return { statusCode: 200, body: JSON.stringify(result) }; # HTTP 200 OK
}
Step 3: SAM Template
# template.yaml
AWSTemplateFormatVersion: '2010-09-09' # 2010 = configured value
Transform: AWS::Serverless-2016-10-31 # 2016 = configured value
Resources:
GammaFunction:
Type: AWS::Serverless::Function
Properties:
Handler: dist/gamma-handler.handler
Runtime: nodejs20.x
Timeout: 30
MemorySize: 256 # 256 bytes
Policies:
- SecretsManagerReadWrite
Environment:
Variables:
NODE_ENV: production
Google Cloud Run Deployment
Step 1: Store Secret
echo -n "your-gamma-api-key" | \
gcloud secrets create gamma-api-key --data-file=-
Step 2: Dockerfile
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY dist ./dist
CMD ["node", "dist/server.js"]
Step 3: Deploy
set -euo pipefail
gcloud run deploy gamma-service \
--image gcr.io/$PROJECT_ID/gamma-service \
--platform managed \
--region us-central1 \
--set-secrets GAMMA_API_KEY=gamma-api-key:latest \
--allow-unauthenticated
GitHub Actions Deployment
# .github/workflows/deploy.yml
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
run: npm ci && npm run build
- name: Deploy to Vercel
uses: amondnet/vercel-action@v25
with:
vercel-token: ${{ secrets.VERCEL_TOKEN }}
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }}
vercel-args: '--prod'
Output
- Production deployment on chosen platform
- Secrets securely stored
- Environment variables configured
- Automated deployment pipeline
Error Handling
| Error | Cause | Solution |
|---|---|---|
| Secret not found | Missing secret | Create secret in platform |
| Timeout | Function too slow | Increase timeout limit |
| Cold start | Lambda initialization | Use provisioned concurrency |
| Permission denied | IAM misconfigured | Update IAM policies |
Resources
Next Steps
Proceed to gamma-webhooks-events for event handling.
Examples
Basic usage: Apply gamma deploy integration to a standard project setup with default configuration options.
Advanced scenario: Customize gamma deploy integration for production environments with multiple constraints and team-specific requirements.
Weekly Installs
16
Repository
jeremylongshore…s-skillsGitHub Stars
1.6K
First Seen
Feb 18, 2026
Security Audits
Installed on
opencode16
gemini-cli16
antigravity16
claude-code16
github-copilot16
codex16