1st Place
food-fight-robots
This game transforms food from your photo folder into robots and fights.
Core trick
Converts a food photo into a robot concept image with Gemini, then generates a GLB 3D model via Meshy for battle.
Description
This game transforms food from your photo folder into robots and fights.
README excerpt
# Food Fight Robots Food image in, battle robot out. This project uses `Next.js 16 + React 19` for the UI and `Tauri v2 + Rust` for desktop-side orchestration, storage, and API access. ## What It Does - Upload a food image in the Construction screen - Normalize the input to PNG on the frontend for stable cross-platform behavior - Generate robot stats and lore with Gemini - Generate a concept image and 3D model with Gemini + Meshy - Save images, GLB files, and SQLite data under the Tauri app data directory - Browse generated robots in Encyclopedia and use them in Battle ## Stack - Frontend: Next.js, React, TypeScript, Tailwind CSS - 3D: three.js, `@react-three/fiber`, `@react-three/drei` - Desktop backend: Tauri v2, Rust - Storage: SQLite via `rusqlite` - External APIs: Gemini API, Meshy API ## Prerequisites ### Common - Node.js 20+ - npm - Rust stable ### Windows - Microsoft C++ Build Tools - Microsoft Edge WebView2 Tauri prerequisites: https://v2.tauri.app/ja/start/prerequisites/ ### macOS - Xcode Command Line Tools Tauri prerequisites: https://v2.tauri.app/ja/start/prerequisites/ ## Setup 1. Install dependencies: ```bash npm install ``` 2. Create `.env` from `.env.example` and set your API keys: ```env GEMINI_API_KEY=your_gemini_api_key MESHY_AI_API_KEY=your_meshy_ai_api_key ``` ## Development Tauri is the primary runtime target for this app. ```bash npm run tauri:dev ``` If you only want to inspect the frontend shell: ```bash npm run dev ``` Note: