Turtle Soup is a popular situational puzzle game where players need to uncover the truth behind seemingly illogical scenarios through questioning. This project is a frontend implementation of a Turtle Soup puzzle game built with Vue 3 and TypeScript.
URL: https://versaxu.github.io/Turtle-Soup/
Available Account:
- Username: admin
- Password: admin
Note: User authentication system is under development. Currently only admin account is supported.
- The game starts with an absurd or confusing situation
- Players ask questions to uncover the underlying reason
- The system can only answer "Yes", "No", or "Irrelevant"
- After 3 questions, players can request hints
- Players should try to find the correct answer with minimal questions
- Frontend Framework: Vue 3 + TypeScript
- State Management: Pinia
- UI Components: Custom components
- API Communication: Axios
- Deployment: GitHub Pages
- Backend Service: Express.js + Vercel
- Rich puzzle database with various types and difficulty levels
- Intelligent Q&A system that understands and responds to player questions
- Progress tracking system showing puzzle-solving progress
- Hint system to assist with challenging puzzles
- Responsive design for all devices
- Node.js 14.x or higher
- npm or yarn
- Clone repository
git clone https://github.com/VersaXu/Turtle-Soup.git
cd Turtle-Soup- Install dependencies
npm install
# or
yarn install- Start development server
npm run dev
# or
yarn dev- Build for production
npm run build
# or
yarn buildThe game includes various types of puzzles:
- Classic puzzles
- Word games
- Life-or-death choices
- Daily life scenarios
- Horror and suspense
- Sci-fi and fantasy
- Emotional and psychological
Each puzzle has corresponding difficulty levels (Easy, Medium, Hard) and hint system.
src/
├── assets/ # Static assets
├── components/ # Components
│ └── TurtleSoupGame.vue # Main game component
├── config/ # Configuration files
│ ├── apiConfig.ts # API configuration
│ └── turtleSoupKnowledgeBase.ts # Puzzle database
├── services/ # Services
│ ├── http.service.ts # HTTP service
│ ├── turtleSoupApi.ts # Turtle Soup API service
│ └── turtleSoupService.ts # Turtle Soup game service
├── stores/ # State management
│ └── turtleSoupStore.ts # Turtle Soup state store
└── views/ # Views
└── TurtleSoupGameView.vue # Game view
The project uses GitHub Actions for automatic deployment to GitHub Pages. When code is pushed to the main branch, it automatically builds and deploys to the gh-pages branch.
The backend service is deployed on Vercel and provides API support:
- Puzzle generation
- Question answering
- User authentication
Backend repository: Turtle-Soup-Backend
Welcome to contribute to the project! You can participate through:
- Submitting issues or suggestions
- Contributing code improvements
- Adding new puzzles
- Original authors of all Turtle Soup puzzles
- Vue.js community
- Project contributors