Loading skill
Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Deploy Anima design-to-code service as a backend API endpoint. Use when building a design-to-code microservice, deploying Anima SDK as a serverless function, or creating an internal design tool API. Trigger: "deploy anima", "anima service deploy", "anima serverless".
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | -9% | 0% |
| case-01 | ✗→✓ | ▲ Improved | -14% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -23% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -30% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -17% | 0% |
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.
typescript// 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'));
typescript// 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 }); }
bash# 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
For webhook integration, see anima-webhooks-events.
Other measured skills in the registry, with their headline benchmark lift.