A Julia library for solving Wordle puzzles.

Overview

Wordle.jl

A Julia library for solving Wordle puzzles.

Usage

julia> import Wordle: play

julia> play("panic")
4

julia> play("panic", verbose = true)
Iteration: 1
Candidate: irate
🟨⬜🟨⬜⬜
Iteration: 2
Candidate: basin
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
Iteration: 3
Candidate: manic
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
⬜🟩🟩🟩🟩
Iteration: 4
Candidate: panic
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
⬜🟩🟩🟩🟩
🟩🟩🟩🟩🟩
Success!
4

julia> play("panic", verbose = true, debug = true)
Iteration: 1
Candidate: irate
🟨⬜🟨⬜⬜
==========================================
Constraints
* Lower Bounds:
 * a ≥ 1
 * i ≥ 1

* Exact Matches:
 * ·····

* Global Ban:
 * e = 0
 * r = 0
 * t = 0


* Local Ban:
 * word[1] ≠ i
 * word[3] ≠ a


==========================================
Number of Candidates: 41 / 2315 [1.771%]
Iteration: 2
Candidate: basin
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
==========================================
Constraints
* Lower Bounds:
 * a ≥ 1
 * i ≥ 1
 * n ≥ 1

* Exact Matches:
 * ·a·i·

* Global Ban:
 * b = 0
 * e = 0
 * r = 0
 * s = 0
 * t = 0


* Local Ban:
 * word[1] ≠ i
 * word[3] ≠ a
 * word[5] ≠ n


==========================================
Number of Candidates: 3 / 2315 [0.130%]
Candidates: ["panic", "mania", "manic"]

Iteration: 3
Candidate: manic
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
⬜🟩🟩🟩🟩
==========================================
Constraints
* Lower Bounds:
 * a ≥ 1
 * c ≥ 1
 * i ≥ 1
 * n ≥ 1

* Exact Matches:
 * ·anic

* Global Ban:
 * b = 0
 * e = 0
 * m = 0
 * r = 0
 * s = 0
 * t = 0


* Local Ban:
 * word[1] ≠ i
 * word[3] ≠ a
 * word[5] ≠ n


==========================================
Number of Candidates: 1 / 2315 [0.043%]
Candidates: ["panic"]

Iteration: 4
Candidate: panic
🟨⬜🟨⬜⬜
⬜🟩⬜🟩🟨
⬜🟩🟩🟩🟩
🟩🟩🟩🟩🟩
==========================================
Constraints
* Lower Bounds:
 * a ≥ 1
 * c ≥ 1
 * i ≥ 1
 * n ≥ 1
 * p ≥ 1

* Exact Matches:
 * panic

* Global Ban:
 * b = 0
 * e = 0
 * m = 0
 * r = 0
 * s = 0
 * t = 0


* Local Ban:
 * word[1] ≠ i
 * word[3] ≠ a
 * word[5] ≠ n


==========================================
Number of Candidates: 0 / 2315 [0.000%]
Candidates: String[]

Success!
4

Owner
John Myles White
John Myles White
A project designed to make taking notes easier than ever - by doing it all on command line

A project designed to make taking notes easier than ever - by doing it all on command line! Yes, all of your files are easily accessible through one command interface, and can be written to at any ti

1 Dec 10, 2021
Declarative CLIs with argparse and dataclasses

argparse_dataclass Declarative CLIs with argparse and dataclasses. Features Features marked with a ✓ are currently implemented; features marked with a

Mike DePalatis 29 Dec 06, 2022
A lightweight Python module and command-line tool for generating NATO APP-6(D) compliant military symbols from both ID codes and natural language names

Python military symbols This is a lightweight Python module, including a command-line script, to generate NATO APP-6(D) compliant military symbol icon

Nick Royer 5 Dec 27, 2022
A command line tool to hide and reveal information inside images (works for both PNGs and JPGs)

Imgrerite A command line tool to hide and reveal information inside images (works for both PNGs and JPGs) Dependencies Python 3 Git Most of the Linux

Jigyasu 10 Jul 27, 2022
電通大のCLIツールです

uecli 電通大のCLIツールです。コマンドラインからシラバス検索、成績参照、図書館の貸出リストなどを見ることができます インストール pip install uecli 使い方 シラバスを検索 uecli syllabus search -s 'コンピュータサイエンス' シラバスを取得し、Mar

UEC World Dominators 2 Oct 31, 2021
A CLI for advanced management of your notes with simple commands

PyNoteManager This is a CLI for advanced management of your notes with simple co

3 Dec 30, 2021
A minimal todo list for your terminal.

todo A minimal todo list for your terminal. Installation Run the following command. pip install git+https://github.com/piero-vic/todo.git Usage todo

Piero Lescano 7 Aug 08, 2022
Find your broken links, so users don't.

PyAnchor Dead links are an annoyance for websites with an extensive amount of content. A side from the negative impact on SEO, dead links are an annoy

Ricky White 61 Dec 14, 2022
You'll never want to use cd again.

Jmp Description Have you ever used the cd command? You'll never touch that outdated thing again when you try jmp. Navigate your filesystem with unprec

Grant Holmes 21 Nov 03, 2022
📦 A command line utility to put text in a box.

boxie A command line utility to put text in a box. Installation pip install boxie If you are on Linux you may need to use sudo to access this globally

Eliaz Bobadilla 10 Jun 30, 2022
Simple command line tool for text to image generation using OpenAI's CLIP and Siren (Implicit neural representation network)

Simple command line tool for text to image generation using OpenAI's CLIP and Siren (Implicit neural representation network)

Phil Wang 4.4k Jan 09, 2023
Autosub - Command-line utility for auto-generating subtitles for any video file

Auto-generated subtitles for any video Autosub is a utility for automatic speech recognition and subtitle generation. It takes a video or an a

Anastasis Germanidis 3.9k Jan 05, 2023
A terminal utility to sort image files based on their characteristics.

About A terminal utility to sort image files based on their characteristics. Motivation This program was developed after I've realized that I had too

José Ferreira 1 Dec 10, 2022
moviepy-cli: Command line interface for MoviePy.

Moviepy-cli is designed to apply several video editing in a single command with Moviepy as an alternative to Video-cli.

Kentaro Wada 23 Jun 29, 2022
A simple yet powerful timer and time tracker from the command line.

Focus Phase Focus Phase (FP) is a simple yet powerful timer and time tracker. It is a command-line application written in Python and can be installed

Ammar Alyousfi 13 Jan 13, 2022
PipeCat - A command line Youtube music player written in python.

A command line Youtube music player written in python. It's an app written for Linux. It also supports offline playlists that are stored in a

34 Nov 27, 2022
Centauro - a command line tool with some network management functionality

Centauro Ferramenta de rede O Centauro é uma ferramenta de linha de comando com

1 Jan 01, 2022
AML Command Transfer. A lightweight tool to transfer any command line to Azure Machine Learning Services

AML Command Transfer (ACT) ACT is a lightweight tool to transfer any command from the local machine to AML or ITP, both of which are Azure Machine Lea

Microsoft 11 Aug 10, 2022
This is a Command Line program to interact with your NFTs, Cryptocurrencies etc

This is a Command Line program to interact with your NFTs, Cryptocurrencies etc. via the ThirdWeb Platform. This is just a fun little project that I made to be able to connect to blockchains and Web3

Arpan Pandey 5 Oct 02, 2022