Hack #5: Kiro · AWS Kiro
23 Apr, 15:12
Voice Chess Talk to your chess game. Voice Chess reimagines how we interact with one of the world's oldest strategy games. Instead of dragging pieces on a screen, you speak — "move knight to f3" — and an AI voice agent powered by ElevenLabs understands, executes, and responds in real-time natural conversation. What it does: Voice Chess is a fully playable chess app with two modes: - Solo vs. AI — Play against a built-in chess engine using your voice or by clicking. Ask the agent "what's on the board?" and it describes the full position aloud. Say "move from e2 to e4" and it plays the move for you. - Multiplayer — Create a room, share a code (or link), and play a timed 10-minute game against a friend over the internet. The voice agent works here too — it's your hands-free interface to the board. A 3D animated orb built with Three.js provides real-time visual feedback: it pulses when the agent is listening, shifts when it's speaking, and rests when idle. It turns the voice interaction into something you can see, not just hear. How it works: The frontend is a Next.js app that renders an interactive chessboard and connects to an ElevenLabs voice agent via their React SDK. The agent has two client tools — getBoard (reads the full board state aloud) and makeMove (executes a move) — so the conversation loop is tight: you speak, the agent acts on the game, and responds with what happened. The backend is a Bun server with Socket.IO handling all multiplayer logic: room creation, move validation via chess.js, turn enforcement, 10-minute clocks with 100ms tick resolution, and win/loss/draw/timeout/disconnect detection. The entire client is statically exported and served directly by Bun for minimal latency. Why it matters: Voice interfaces for games are still largely unexplored. This project demonstrates that conversational AI can be a first-class input method — not a gimmick, but a genuinely usable way to play. It's accessible (hands-free play for anyone who needs it), it's social (talk to your game while playing against a friend), and it showcases what's possible when you wire ElevenLabs Agents directly into application state with client tools. Built with: Next.js · Bun · Socket.IO · chess.js · ElevenLabs React SDK · ElevenLabs UI (Orb) · Three.js · Tailwind CSS
