이는 Figma 플러그인 내부에서 스트리밍 LLM 응답을 보여주는 Figma AI 플러그인 템플릿입니다. 이 템플릿은 다음을 보여줍니다.
이 플러그인은 Next.js를 사용하도록 설정되었습니다.
먼저 create-next-app을 사용하여 이 템플릿을 만듭니다.
npx create-next-app@latest --example https://github.com/figma/ai-plugin-template/
다음으로 OpenAI API 키를 .env.local
파일에 저장해야 합니다. API 키 페이지에서 API 키를 얻을 수 있습니다. 이 프로젝트의 루트에 .env.local
파일을 만들고 API 키를 추가합니다.
OPENAI_API_KEY= ***
그런 다음 개발 서버를 실행합니다.
npm i
npm run dev
그런 다음 Figma 데스크톱 앱을 열고 이 프로젝트의 매니페스트 파일에서 플러그인을 가져올 수 있습니다. 캔버스를 마우스 오른쪽 버튼으로 클릭하고 Plugins > Development > Import plugin from manifest...
이동한 후 {path to this project}/plugin/manifest.json
에서 manifest.json
선택할 수 있습니다.
편집하려는 주요 파일은 다음과 같습니다.
app/page.tsx
: 플러그인 iframe
업데이트할 수 있습니다. 파일을 편집하면 페이지가 자동으로 업데이트되며 플러그인의 사용자 인터페이스를 업데이트할 수 있습니다.app/completion/route.ts
: 이는 플러그인의 "서버"이며 OpenAI와 통신하는 역할을 합니다. 여기에서 GPT로 보내는 메시지를 업데이트할 수 있습니다.plugin/manifest.json
: 플러그인의 권한과 편집기 유형을 업데이트할 수 있는 매니페스트 파일입니다. 이 예에서는 Next.js 앱을 Vercel에 게시합니다. Next.js를 지원하는 다른 호스팅 제공업체에 게시할 수도 있습니다.
OPENAI_API_KEY
OpenAI API 키로 설정해야 합니다.package.json
파일의 siteURL
섹션을 업데이트할 수 있습니다. https://your-site-here.vercel.app/
과 같습니다. "config" : {
"siteURL" : " https://your-site-here.vercel.app/ "
}
npm run build
실행하여 배포된 URL을 가리키는 플러그인의 프로덕션 빌드를 생성하세요. 이 템플릿에는 iframe 내부에서 플러그인 코드를 실행할 수 있는 @/lib/figmaAPI
의 figmaAPI
도우미가 포함되어 있습니다. 이는 iframe <-> 플러그인 postMessage API를 피하고 작성해야 하는 코드의 양을 줄이는 데 유용합니다.
예:
import { figmaAPI } from "@/lib/figmaAPI" ;
const nodeId = "0:2" ;
const result = await figmaAPI . run (
( figma , { nodeId } ) => {
return figma . getNodeById ( nodeId ) ?. name ;
} ,
// Any variable you want to pass to the function must be passed as a parameter.
{ nodeId } ,
) ;
console . log ( result ) ; // "Page 1"
이 도우미에 대해 참고할 몇 가지 사항은 다음과 같습니다.