A chess training app that tests your ability to guess player Elo ratings by watching their games. Challenge your chess intuition and see how well you understand different skill levels.
- Watch real chess games and guess player ratings
- Get scored feedback with accuracy metrics
- Compete on the global leaderboard
- Import your own PGN games for practice
- Navigate through games with simple controls
- Track your progress with detailed stats
- Works on desktop and mobile
- Next.js 15 with App Router
- React 19 and TypeScript
- Tailwind CSS v4 for styling
- Radix UI for components
- chess.js and react-chessboard for chess logic
- Custom React hooks for state management
- Lucide React for icons
- Sonner for notifications
-
Clone the repo
git clone https://github.com/hellofaizan/gte.git cd guesstheelo -
Install dependencies
npm install
-
Start the dev server
npm run dev
-
Open http://localhost:3000 in your browser
src/
├── app/
│ ├── (main_page)/ # Main game page
│ ├── leaderboard/ # Leaderboard page
│ └── layout.tsx # Root layout
├── components/
│ ├── GameInterface.tsx # Main game UI
│ ├── board/ # Chess board components
│ └── ui/ # UI components
├── hooks/
│ └── use-chess-game.ts # Game logic
├── lib/
│ └── scoring.ts # Scoring algorithm
└── actions/
└── chessgames.ts # API integration
- Click "Start Game" to load a random chess game
- Watch the game and navigate through moves
- Use the slider to guess the average Elo rating
- Submit your guess to see your results
- Check your score and grade
- Compare your performance on the leaderboard
Create a .env.local file:
NEXT_PUBLIC_SITE_URL=https://guesselo.mohammadfaizan.in/
NEXT_PUBLIC_GOOGLE_ANALYTICS_ID=your-ga-idUpdate these files with your domain:
src/app/layout.tsx- metadataBase URLsrc/app/sitemap.ts- baseUrlpublic/robots.txt- sitemap URL
npm run build
vercel --prodnpm run build
npm start- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
- Chess.com for game data
- chess.js for chess logic
- react-chessboard for the interface
- Radix UI for components
- Tailwind CSS for styling
Email [email protected] or open an issue in this repo.
Made with chess by Mohammad Faizan