A React Native multiplatform helper app for solving Wordle puzzles faster! Built with Expo, this app analyzes your guesses and provides real-time word suggestions.
- Interactive Virtual Keyboard: Tap letters and assign status colors (green/yellow/gray)
- Smart Word Filtering: Real-time suggestions based on your guess history
- Wordle-Style Interface: 6 guess rows with 5 letter tiles each
- Smooth Animations: Color transitions and scale effects using Reanimated
- Haptic Feedback: Tactile responses for better user experience
- Hard Mode Support: Enforces use of revealed hints in subsequent guesses
- Dark Mode: Automatic system theme detection
- Multiplatform: Works on iOS, Android, and Web
Web version availble here
- Install Expo Go on your iOS or Android device
- Scan the QR code below (available after first EAS build is published)
๐ฒ QR code will appear here after the first production build is published to Expo.
- Tap a letter from the virtual keyboard
- Select the status of that letter:
- โ Green (Correct): Letter is in the word and in the correct position
- ? Yellow (Wrong Spot): Letter is in the word but in the wrong position
- โ Gray (Not In Word): Letter is not in the word at all
- Continue entering letters until you fill a row
- View suggestions - The app shows up to 20 possible words that match your clues
- Tap any filled tile to cycle through status colors
- Reset to start a new puzzle
-
Install dependencies:
npm install
-
Start the app:
npx expo start
-
Run on your preferred platform:
- Press
ifor iOS simulator - Press
afor Android emulator - Press
wfor web browser - Scan QR code with Expo Go app
- Press
This project uses EAS Build for production builds and EAS Update for OTA updates.
npm install -g eas-cli eas login
| Profile | Purpose | Distribution |
|---|---|---|
development |
Local dev client (iOS Simulator) | Internal |
preview |
Shareable test build (.apk) | Internal |
production |
App Store / Play Store build | Store |
# Build for both platforms (production) npm run build:all # Build for a specific platform npm run build:ios npm run build:android # Build development client eas build --profile development --platform ios
Before submitting, fill in the credentials in eas.json:
- iOS:
appleId,ascAppId,appleTeamId - Android: path to your
google-services-key.json
npm run submit:ios npm run submit:android
Push a JavaScript update to users without a full build:
npm run update
| Technology | Purpose |
|---|---|
| Expo SDK 54 | React Native framework |
| TypeScript | Type safety |
| Expo Router | File-based navigation |
| React Native Reanimated | 60fps animations |
| Expo Haptics | Tactile feedback |
| Async Storage | Persistent settings |
| EAS Build | Cloud builds & deployment |
WordleWizard/
โโโ app/ # Expo Router screens
โ โโโ _layout.tsx # Root navigation layout
โ โโโ modal.tsx # Modal screen
โ โโโ (tabs)/
โ โโโ _layout.tsx # Tab bar configuration
โ โโโ index.tsx # ๐ Main game screen
โ โโโ explore.tsx # i๏ธ Instructions screen
โ โโโ settings.tsx # โ๏ธ Settings (theme, hard mode)
โโโ src/
โ โโโ components/
โ โ โโโ LetterTile.tsx # Animated letter tile
โ โ โโโ GuessRow.tsx # Row of 5 letter tiles
โ โ โโโ VirtualKeyboard.tsx # QWERTY keyboard with status selector
โ โ โโโ WordSuggestionsList.tsx # Scrollable word suggestions
โ โโโ types/
โ โ โโโ wordle.ts # TypeScript interfaces
โ โโโ utils/
โ โ โโโ wordFilter.ts # Word filtering algorithm
โ โ โโโ hardModeValidator.ts # Hard mode validation logic
โ โโโ data/
โ โโโ wordList.ts # 2300+ valid Wordle words
โโโ assets/ # Images, icons, fonts
โโโ app.json # Expo configuration
โโโ eas.json # EAS Build & Submit configuration
โโโ package.json # Dependencies & scripts
| Color | Hex | Meaning |
|---|---|---|
| ๐ฉ Green | #6aaa64 |
Correct position |
| ๐จ Yellow | #c9b458 |
Wrong position |
| โฌ Gray | #787c7e |
Not in word |
| โฌ Light Gray | #d3d6da |
Empty / unused |
Contributions are welcome! Here's how to get started:
- Fork this repository
- Create a branch:
git checkout -b feature/your-feature-name - Make your changes and ensure the app runs correctly
- Lint your code:
npm run lint - Commit:
git commit -m "Add your feature" - Push:
git push origin feature/your-feature-name - Open a Pull Request
Please keep PRs focused on a single feature or fix.
This project is open source and available for personal use.