프로젝트 소개

FlowCraft는 Google Gemini AI 모델을 사용하여 AI 기반 콘텐츠 생성을 위해 설계된 오픈소스 비주얼 워크플로우 빌더입니다. 직관적인 드래그 앤 드롭 인터페이스를 통해 다양한 유형의 노드를 연결하여 복잡한 멀티모달 워크플로우를 만들고, 궁극적으로 텍스트, 이미지, 비디오를 생성할 수 있습니다. **핵심 기능** 이 플랫폼은 @xyflow/react 기반의 비주얼 워크플로우 빌더를 갖추고 있어 코드를 작성하지 않고도 확장 가능한 AI 워크플로우를 설계할 수 있습니다. Google의 생성형 AI 모델과 일급 통합을 제공하며, 텍스트 생성용 Gemini 3 Pro 및 3 Flash, 이미지 생성용 Nano Banana Pro(Gemini 3 Pro Image Preview) 및 Gemini 2.5 Flash Image, 비디오 생성용 Veo 3.1을 포함합니다. 워크플로우는 시각적 피드백과 진행 상황 추적을 통해 실시간으로 실행할 수 있으며, 병렬 처리 엔진이 종속성을 자동으로 해결하고 스마트 실행 경로를 결정합니다. **내장 노드 유형** FlowCraft는 포괄적인 내장 노드 세트를 제공합니다: - **LLM(에이전트) 노드**: Gemini 기반 텍스트 생성으로 텍스트 및 파일 입력, 구성 가능한 도구, 시스템 지침, 엄격한 JSON 출력, 시각적 스키마 빌더를 지원합니다. - **이미지 노드**: Gemini 3 Pro Image Preview 또는 Gemini 2.5 Flash Image를 사용하여 이미지를 생성하며, 종횡비, 참조, 해상도를 구성할 수 있습니다. - **비디오 노드**: Veo 3.1(Fast 및 Pro 모델) 기반으로 텍스트 프롬프트에서 4초, 6초 또는 8초 길이의 비디오를 생성하며, 연결된 노드의 첫 번째/마지막 프레임이나 참조 이미지를 선택적으로 사용할 수 있습니다. - **파일 노드**: PDF, 이미지, 비디오 등 파일을 관리하고 미리보기하며, Google Cloud Storage URI를 통해 LLM 및 Vision 노드에 연결할 수 있습니다. - **텍스트 노드**: 프롬프트와 지침을 위한 간단한 여러 줄 텍스트 입력입니다. - **업스케일 노드**: Imagen 4.0을 사용하여 생성된 이미지를 최대 4배까지 업스케일합니다. - **리사이즈 노드**: 이미지를 새 종횡비로 지능적으로 리사이즈하거나 크롭합니다. - **커스텀 워크플로우 노드**: 이전에 저장한 흐름을 모듈형 재사용 가능한 커스텀 노드로 포함합니다. - **입력/출력 노드**: 커스텀 워크플로우의 데이터 경계를 정의합니다. **고급 기능** 워크플로우 엔진(workflow-engine.ts)은 병렬 처리를 통해 실행 그래프를 재귀적으로 처리합니다. 동적 구성 패널을 통해 사용자는 사이드바에서 생성 모델, 시스템 지침, 비디오 길이, 미디어 해상도와 같은 매개변수를 실시간으로 조정할 수 있습니다. 내장 인증은 next-auth를 통한 Google OAuth를 사용하며, 미디어 뷰어를 통해 그래프 내에서 생성된 자산을 직접 검토할 수 있습니다. **기술 스택** 프론트엔드: Next.js 16.1(App Router), React 19, TypeScript, Tailwind CSS 4.1.18, @xyflow/react 12.10, shadcn/ui(Radix UI + Tailwind), 클라이언트 측 상태 관리를 위한 Zustand. 백엔드: Node.js 및 Next.js 서버리스 함수, Vertex AI 상호작용을 위한 Google GenAI SDK, Infrastructure as Code를 위한 Terraform, 컨테이너 호스팅을 위한 Google Cloud Run, 아티팩트 저장을 위한 Google Cloud Storage, 실시간 NoSQL 데이터베이스를 위한 Google Cloud Firestore, 표준화된 로깅을 위한 Winston. **지원 AI 모델** - 텍스트: gemini-3.1-pro-preview, gemini-3.5-flash, gemini-3.1-flash-lite - 이미지: imagen-4.0-upscale-preview, gemini-2.5-flash-image, gemini-3-pro-image, gemini-3.1-flash-image, gemini-3.1-flash-lite-image - 비디오: veo-3.1-lite-generate-001, veo-3.1-fast-generate-001, veo-3.1-generate-001, gemini-omni-flash-preview **배포** 이 프로젝트는 Terraform을 사용하여 Google Cloud 인프라를 프로비저닝하고 관리합니다. 배포 스크립트(scripts/deploy.sh)는 Terraform 초기화, 빌드 계획 및 적용을 조정하여 GCP 리소스를 프로비저닝하고, Cloud Build를 통해 Docker 이미지를 빌드하고, Cloud Run에 배포합니다. 사전 요구 사항으로는 Node.js 18+, Vertex AI가 활성화된 Google Cloud 프로젝트, Firebase/Firestore 데이터베이스, GCS 버킷이 있습니다. **사용 사례** FlowCraft는 복잡한 멀티모달 워크플로우를 지원합니다. 예를 들어 Gemini 텍스트 브레인스토밍 에이전트를 Imagen 4.0 이미지 생성 블록에 연결하고, 16:9 이미지를 TikTok용 9:16으로 리사이즈한 후 Veo 3.1 비디오 생성의 첫 번째 프레임으로 전달하거나, 긴 PDF를 내부적으로 map-reduce 하위 흐름을 실행하는 커스텀 요약 노드에 제공할 수 있습니다. 이 프로젝트는 Apache 2.0 라이선스로 제공되며, 표준 fork-branch-commit-PR 워크플로우를 통한 기여를 환영합니다.