Skillshub anima-deploy-integration
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/jeremylongshore/claude-code-plugins-plus-skills/anima-deploy-integration" ~/.claude/skills/comeonoliver-skillshub-anima-deploy-integration && rm -rf "$T"
manifest:
skills/jeremylongshore/claude-code-plugins-plus-skills/anima-deploy-integration/SKILL.mdsource content
Anima Deploy Integration
Overview
Deploy the Anima SDK as a backend service. The SDK is server-side only, so deploy it behind an API endpoint that accepts Figma file/node references and returns generated code.
Instructions
Step 1: Express API Wrapper
// src/server.ts import express from 'express'; import { Anima } from '@animaapp/anima-sdk'; const app = express(); app.use(express.json()); const anima = new Anima({ auth: { token: process.env.ANIMA_TOKEN! } }); app.post('/api/generate', async (req, res) => { const { fileKey, nodesId, settings } = req.body; if (!fileKey || !nodesId?.length) { return res.status(400).json({ error: 'fileKey and nodesId required' }); } try { const { files } = await anima.generateCode({ fileKey, figmaToken: process.env.FIGMA_TOKEN!, nodesId, settings: settings || { language: 'typescript', framework: 'react', styling: 'tailwind' }, }); res.json({ files, count: files.length }); } catch (err: any) { res.status(500).json({ error: err.message }); } }); app.get('/health', (_req, res) => res.json({ status: 'ok' })); app.listen(3000, () => console.log('Anima service on :3000'));
Step 2: Vercel Serverless Function
// api/generate.ts import { Anima } from '@animaapp/anima-sdk'; const anima = new Anima({ auth: { token: process.env.ANIMA_TOKEN! } }); export default async function handler(req: any, res: any) { if (req.method !== 'POST') return res.status(405).end(); const { fileKey, nodesId, settings } = req.body; const { files } = await anima.generateCode({ fileKey, figmaToken: process.env.FIGMA_TOKEN!, nodesId, settings: settings || { language: 'typescript', framework: 'react', styling: 'tailwind' }, }); res.json({ files }); }
Step 3: Deploy Commands
# Vercel vercel secrets add anima_token "$ANIMA_TOKEN" vercel secrets add figma_token "$FIGMA_TOKEN" vercel --prod # Cloud Run gcloud run deploy anima-service \ --source . \ --set-secrets=ANIMA_TOKEN=anima-token:latest,FIGMA_TOKEN=figma-token:latest \ --region us-central1 --allow-unauthenticated
Output
- Express API wrapping Anima SDK for internal design tooling
- Vercel serverless function for lightweight deployment
- Cloud Run deployment with Secret Manager
Resources
Next Steps
For webhook integration, see
anima-webhooks-events.