Wiki › Project

Word games engine

Project · app · 2026

Wordplay is a collection of word puzzles on the web, served as wp.chaipat.cc in his research network. It combines classic daily puzzles with solvers and a real-time multiplayer race.

Games and tools

Woodle
a Wordle-style game where you guess a five-letter word in six tries.
Spelling Bee
make words from seven letters, always using the centre one.
Connections
sort words into four hidden groups.
Cryptogram
crack a substitution cipher.
Word Search
Pattern Finder
find words by prefix, suffix or letter pattern.
Anagram Solver and Crossword Helper
Word Race
a real-time multiplayer game over WebSockets.

How it's built

Front end
React 19 with React Router, built with Vite.
Back end
Node.js and Express, with Socket.io for multiplayer, and JSON Web Tokens and bcrypt for accounts.
Data
a dictionary engine on PostgreSQL, with Redis as a cache. It uses a Trie data structure, a prefix tree, so pattern and anagram searches only follow paths that can still form words.
Tests
unit tests with Vitest and React Testing Library, and end-to-end tests with Playwright.
Hosting
deployed on Vercel.

See also

In the knowledge graph

Word games and the 16 things it is linked to. Open any dot for its page, or explore it in the full graph.

When
2023202420252026
Jun 2026 · 71 commits

As data

Everything on this page is read from triples in the knowledge graph. These are the 33 it states about Word games, and 2 more its ontology implies; the console runs SPARQL over the whole graph, here in your browser.

Download
@prefix id: <https://ask.chaipat.cc/id/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix cj: <https://ask.chaipat.cc/ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

id:WordGames
    a cj:Project ;
    rdfs:label "Word games engine" ;
    cj:shortLabel "Word games" ;
    skos:altLabel "Wordplay" ;
    cj:context id:ChaipatCC ;
    cj:uses id:PostgreSQL ,
            id:Redis ,
            id:Trie ,
            id:JavaScript ,
            id:React ,
            id:Vite ,
            id:Express ,
            id:Vercel ,
            id:SocketIO ,
            id:Vitest ,
            id:Playwright ;
    cj:url "https://wp.chaipat.cc"^^xsd:anyURI ;
    cj:liveUrl "https://wp.chaipat.cc"^^xsd:anyURI ;
    cj:description "Wordplay: a collection of word puzzles (a Wordle-style game, Spelling Bee and more) on React and Vite, with an Express API over a Postgres and Redis dictionary engine using Trie-based lookup." ;
    cj:repository "https://github.com/AppleBoiy/wordplay"^^xsd:anyURI ;
    cj:firstCommit "2026-06-14"^^xsd:date ;
    cj:lastCommit "2026-06-18"^^xsd:date ;
    cj:commitCount 71 ;
    cj:kind "app" ;
    cj:license "MIT" ;
    cj:theme id:ThemeWeb ;
    cj:tier 2 ;
    cj:about id:Wordle ;
    cj:mentions id:NodeJS , id:WebSockets ;
    cj:article "https://ask.chaipat.cc/wiki/WordGames"^^xsd:anyURI ;
    cj:activeIn id:Y2026 ;
    cj:activity _:b180 .