Wordle-solver - A tool that helps people who struggle with vocabulary to enjoy the famous game of WORDLE

Overview

Wordle-Solver

Wordle-Solver helps people who struggle with vocabulary to enjoy the famous game of WORDLE. So that those who find WORDLE extremely hard, just like the developer of Wordle-Solver, will not be embarrassed for not knowing the hidden word of the day or being unable to show their tries.

Wordle-Solver takes an average of 3.7 tries to pinpoint the hidden word and solves 99.7% of five-letter words commonly used in English within the limit of 6 tries if they are chosen as hidden words.

Based on probability, Wordle-Solver helps WORDLE players find the best words for the next try. At the start of the game, this Solver recommends the use of the word “OPERA” on the first try. After making a try, players enter the word used and WORDLE’s response into Wordle-Solver. Then, Wordle-Solver will show a list of recommended words based on probability. In most cases, after 3 – 4 tries, Wordle-Solver is able to pinpoint the hidden word.

How to use

Download Wordle-Solver by cloning this repo.

git clone https://github.com/jason-chao/wordle-solver.git

Run the Wordle-Solver

cd wordle-solver
python3 wordle_solver.py

Open WORDLE

Enter a word into WORDLE. This Solver recommends the use of the word “OPERA” on the first try for the best search results. Sample WORDLE response to OPERA

Enter WORDLE’s response into Wordle-Solver

When WORDLE tells you the result of the first try, enter the word and WORDLE’s response using the symbols indicated below into Wordle-Solver. For the time being, Wordle-Solver is only available as a command-line (CLI) application. Since command-line applications cannot easily handle colours, players need to map the colours of WORDLE’s letter tiles to the following symbols.

Use _ for indicating a letter not in the hidden word in any spot Use ? for 🟨 indicating a letter in the hidden word but in the wrong spot Use + for 🟩 indicating a letter in the hidden word and in the correct spot

You should enter the result into Wordle-Solver in the format of word:symbols (the word, a colon : and the symbols). For example, for the screenshot above as an example, the input into Wordle-Solver should look like opera:_?+?_.

Please enter you last try as word:symbols
opera:_?+?_
Suggested words (from simple word list):
        press

Pick a suggested word shown by Wordle-Solver. Enter it into WORDLE. Repeat this step until Wordle-Solver finds the hidden word for you.

Tips

The WORDLE game only accepts on its own word list on every try. There is a possibility that WORDLE rejects all the words suggested by Wordle-Solver. In this case, enter the command !extended into Wordle-Solver to manually switch to the extended word list. Then, Wordle-Solver will begin to suggest words from the extended word list.

Wordle-Solver uses two lists of English words. One is called “simple” and the other one is called “extended”. The “extended” list has about 11 times more words than the simple list. As one can imagine, the extended list contains many rarely used English words. By default, Wordle-Solver searches for words on the “simple” list only. When no suggestions could be made from the “simple” list, Wordle-Solver will switch to the “extended” list to broaden the search. Except in the case mentioned case, the switch is usually automatic.

A more user-friendly interface

This command-line application is just a proof of concept. A web interface is under construction and will be released soon.

The search strategy

Wordle-Solver uses every bit of information gained from WORDLE’s responses to build the search criteria. The responses from the tries will help Wordle-Solver narrow down to a single, if not a few, possible English word(s). Usually, in the first two or three tires, the list of possible words may still be quite long. Wordle-Solver works out the probabilities of letters with unknown inclusion/exclusion status and suggests words with letters of higher frequencies. It does not matter whether or not these high-frequency letters end up in the hidden word. WORDLE’s responses to these high-frequency letters will help Wordle-Solver shrink the search space efficiently.

The developer of Wordle-Solver experimented with a number of other approaches. He found that the approach now implemented in the Wordle-Solver would produce the best results given the limited he has on this mini-project.

Credits

The “simple” word list is derived from MIT’s 10000-word list. The “extended” word list is derived from the alpha variant of dwyl’s “List of English Words”.

Owner
Jason Chao
Jason Chao
A command line tool (and Python library) for archiving Twitter JSON

A command line tool (and Python library) for archiving Twitter JSON

Documenting the Now 1.3k Dec 28, 2022
CLI Utility to encode and recursively recreate directories with ffmpeg.

FFenmass CLI Utility to encode and recursively recreate directories with ffmpeg. Report Bug · Request Feature Table of Contents Getting Started Prereq

George Av. 8 May 06, 2022
Python CLI script to solve wordles.

Wordle Solver Python CLI script to solve wordles. You need at least python 3.8 installed to run this. No dependencies. Sample Usage Let's say the word

Rachel Brindle 1 Jan 16, 2022
Dead simple CLI tool to try Python packages - It's never been easier! :package:

try - It's never been easier to try Python packages try is an easy-to-use cli tool to try out Python packages. Features Install specific package versi

Timo Furrer 659 Dec 28, 2022
Colab-xterm allows you to open a terminal in a cell

colab-xterm Colab-xterm allows you to open a terminal in a cell. Usage Install package and load the extension !pip install git+https://github.com/popc

InfuseAI 194 Dec 29, 2022
Textual: a TUI (Text User Interface) framework for Python inspired by modern web development

Textual Textual is a TUI (Text User Interface) framework for Python inspired by

17.1k Jan 04, 2023
A command line application, written in Python, for interacting with Spotify.

spotify-py-cli A command line application, written in Python, for interacting with Spotify. The primary purpose behind developing this app was to gain

Drew Loukusa 0 Oct 07, 2021
A simple Python CLI tool that draws routes/paths on a given map.

Map Router A simple Python CLI tool that draws routes/paths on a given map. Index Installation Usage Docs Why? License Support Installation Coming soo

Pedro Morim 1 Nov 07, 2021
Command line client for Audience Insights

Dynamics 365 Audience Insights CLI The AuI CLI is a command line tool for Dynamics 365 Audience Insights. It is based on the customerinsights Python l

Microsoft 8 Jan 09, 2023
The most comprehensive, exhaustive, parameterized command-line wordle solver.

Wordle Solver The most comprehensive, exhaustive, parameterized command-line wordle solver. Wordle is a real

Debarghya Das 27 Nov 21, 2022
keep your machine's shell history synchronize

SyncShell Yet another tool for laziness Keep your machine's shell history synchronize Get SyncShell Currently, SyncShell is just available on PyPi and

Masoud Ghorbani 53 Dec 12, 2022
Chat with Rem in Terminal!

Chat with Rem in Terminal!

bariscodefx 1 Dec 19, 2021
Synchronization tool for external devices which does not support time stamps, e.g. over MTP.

MTP-Sync Tool to synchronize data to a slow device, e.g. a smartphone which is connected over MTP. A state file (.mtp_sync_state.json) is created in t

2 Jul 22, 2022
Stream comments, submissions from subreddits and users across reddit right in your terminal

reddit_from_terminal stream comments, submissions from subreddits and users across reddit right in your terminal Alert! : Can't watch media contents(p

Pritam Dhara 2 Dec 30, 2021
Calculator for CLI. Made with Python

Calculator for CLI. Made with Python

Brandon Arreguin 2 Jan 07, 2022
A tool to automatically convert old string literal formatting to f-strings

flynt - string formatting converter flynt is a command line tool to automatically convert a project's Python code from old "%-formatted" and .format(.

Elijah K 551 Jan 06, 2023
Python remote shell.

Python remote shell.

Steven 9 Oct 17, 2022
CLI based diff viewer

Rich Diff CLI based diff viewer

Suresh Kumar 24 Nov 15, 2022
An question and answer shell environment based on xonsh using ansible for setup

An question and answer shell environment based on xonsh using ansible for setup

Steven Hollingsworth 2 Jan 11, 2022
A simple command line tool written in python to manage a to-do list

A simple command line tool written in python to manage a to-do list Dependencies: python Commands: todolist (-a | --add) [(-p | --priority)] [(-l | --

edwloef 0 Nov 02, 2021