Welcome to AI Alibi! This is an interactive, multiplayer whodunnit game designed for the EFL (English as a Foreign Language) classroom. It uses generative AI to create a unique, engaging, and collaborative learning experience.
This project is being developed as part of "Digital Tools and Technology in the Young Learners' EFL Classroom" course at the University of Augsburg.
Live Demo: alibi.mutlucan.dev
The game challenges students (as "detectives") to solve a simple, age-appropriate mystery. To do this, they must collaborate as a team to question a cast of four unique witnesses. The witnesses are all powered by a generative AI (Google's Gemini API), which responds in character and provides clues (and red herrings!) based on a secret, pre-generated story.
Teams must gather enough evidence to correctly identify the culprit and their motive.
- Dynamic Story Generation: A unique crime, culprit, and set of witness profiles are generated by the AI for every new game.
- Interactive AI Witnesses: Players engage in live, natural language conversations with AI characters who have their own distinct personalities and memories.
- Two Game Modes:
- Classic Mode: A collaborative, turn-based mode for the whole class working as a single team (ideal for a single projector setup).
- Race Mode: A real-time, competitive mode where multiple teams race in isolation to solve the crime first.
- Teacher/Moderator Controls: A full moderation panel for game setup, customisation (language level, theme), and real-time monitoring.
- Frontend: Vue.js 3 (Composition API)
- Build Tool: Vite
- Backend & Real-time Database: Firebase
- AI Model: Google's Gemini API
- Package Manager: pnpm
- Node.js (v18+ recommended)
- pnpm installed globally:
npm install -g pnpm
-
Clone the repository:
git clone [https://gitlab.com/mutlucany/aialibi.git](https://gitlab.com/mutlucany/aialibi.git) cd aialibi -
Install dependencies using
pnpm:pnpm install
This command will start a local server with hot-reloading.
pnpm devThis command builds the static files for deployment.
pnpm buildThis command starts a simple local server to preview the production files.
pnpm preview