An interactive digital version of the traditional Ethiopian board game, built with React, TypeScript, and Tailwind CSS. It features smooth gameplay, responsive design, and an Ethiopian-inspired aesthetic.
# ገበጣ Gebeta - Ethiopian Mancala Game
A beautiful, interactive implementation of the traditional Ethiopian Mancala game built with React, TypeScript, and Tailwind CSS.
## 🎮 About the Game
Gebeta (ገበጣ) is a traditional Ethiopian board game similar to Mancala. Players take turns sowing seeds counterclockwise, capturing opponent's seeds by landing in empty holes on their side.
## ✨ Features
- 🎨 Beautiful Ethiopian-inspired design with coffee brown and gold color palette
- 🎯 Interactive gameplay with smooth animations
- 📱 Responsive design that works on all devices
- 🎪 Visual seed representation with animated elements
- 🏆 Winner detection and score tracking
- 🔄 Game reset functionality
- 💡 AI-powered hint system with Python backend
- 🎨 Clean, modern UI using shadcn/ui components
## 🚀 Getting Started
### Prerequisites
- Node.js (v16 or higher)
- npm or yarn
- Python 3.7 or higher (for hint backend)
### Installation
1. Clone the repository:
```bash
git clone
cd gebeta-digital-soiree
```
2. Install frontend dependencies:
```bash
npm install
```
3. Install backend dependencies:
```bash
cd backend
pip install -r requirements.txt
```
4. Start the Python backend (in one terminal):
```bash
cd backend
python main.py
```
5. Start the frontend development server (in another terminal):
```bash
npm run dev
```
6. Open
localhost in your browser
### Backend Setup
The hint system requires a Python backend to be running. The backend provides AI-powered move suggestions.
**Backend Features:**
- Simple move suggestion algorithm (chooses hole with most seeds)
- Advanced algorithm considering potential captures
- RESTful API with CORS support
- Health check endpoint
**Backend Endpoints:**
- `POST /suggest-move` - Get move suggestion
- `GET /health` - Health check
**Backend Configuration:**
- Runs on `
localhost`
- CORS enabled for frontend communication
- Debug mode enabled for development
## 🎯 How to Play
1. **Setup**: Each player starts with 6 …