A dynamic, AI-powered game world where characters come to life through LLM interactions. Characters move, speak, think, and interact in a minimalist, futuristic environment.
- 🎮 Interactive game world with AI-controlled characters
- 🗣️ Text-to-speech for character dialogue
- 🎯 Smart character positioning with collision avoidance
- ⚙️ Configurable LLM settings (supports Ollama models)
- 🎨 Minimalist, dark theme design
- 📱 Responsive layout with mobile support
Before running Aitopia, you need:
- Ollama installed and running on your machine
- A compatible LLM model pulled into Ollama, e.g.:
ollama pull llama3.2:3b
- Ollama configured to accept requests from Aitopia:
OLLAMA_ORIGINS=http://localhost:3000 ollama serve
The easiest way to run Aitopia is using Docker:
docker run -p 3000:3000 ghcr.io/tlaanemaa/aitopia:latest
Then open http://localhost:3000 in your browser.
- Click the settings gear icon in the top right
- Configure your Ollama endpoint (default: http://localhost:11434)
- Select your preferred model from the available models list
- Start interacting with the game!
To run the project from source:
- Clone the repository:
git clone https://github.com/tlaanemaa/aitopia.git
cd aitopia
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Open http://localhost:3000 in your browser
- Type instructions in the input box to guide the story
- Characters will respond, move, and interact based on the AI's interpretation
- Each character has their own consistent voice and appearance
- Watch the action log to follow the story progression
- Next.js 14 (App Router)
- TypeScript
- Tailwind CSS
- Langchain
- Framer Motion
- Web Speech API
MIT