Friend Challenge is a small Java desktop app for exchanging self-contained guessing games between friends.
The first implemented game is a Wordle-like word guessing game. One player creates a challenge, copies an email-safe text block, and sends it to another player. The receiver pastes the challenge into the app and plays locally.
The project started as a fun way for two old friends to keep playing word games together without needing a server, accounts, authentication, or platform integration.
Early prototype.
Currently implemented:
- Java/Swing desktop app
- Wordle-like game
- Create challenge
- Copy/paste email-safe challenge text
- Import challenge
- Play challenge locally
- JTable-based Wordle board
- Per-game tabs
- Saved game sessions
- Session persistence under
~/friendchallenge/sessions - Anti-spoiler packaging of the hidden answer
Not yet implemented:
- Real dictionary file loading
- Polished UI
- Email/Gmail integration
- Server backend
- Multiple game types
- Player accounts
- Strong anti-cheat security
The app is designed around this general pattern:
A quiz maker creates a hidden challenge.
A quiz solver submits guesses.
The game returns feedback after each guess.
The challenge ends when the solver succeeds, fails, or resigns.
Wordle is only the first game. The architecture should also support other future guessing/feedback games.
Possible future game types:
- Wordle-like word guessing
- Mastermind-style code guessing
- Number guessing
- Map/location guessing
- Astronomy object guessing
- Other friend-made puzzle formats
The first version is intentionally anti-spoiler, not anti-cheat.
The hidden answer is included in the challenge payload so the solver can play offline and receive feedback locally. The answer is encrypted/obfuscated so it is not accidentally visible in the email text.
This prevents casual accidental discovery, such as:
- seeing the answer in the email body
- email preview showing the answer
- search indexing the answer
- accidentally opening the raw challenge text
It does not prevent a determined technical user from extracting the answer.
Future server-backed or maker-verified modes could provide stronger anti-cheat behavior by keeping the answer away from the solver client.
- Open the app.
- Choose
Challenge -> New Wordle Challenge. - Enter title, prompt, answer, and optional reveal message.
- Generate email-safe challenge text.
- Copy the text and send it by email.
- Receive challenge text by email.
- Copy the full text including the begin/end markers.
- Choose
Challenge -> Import Challenge. - Paste the text.
- Play the game in a new tab.
Game sessions are saved automatically after important actions such as importing, guessing, solving, failing, or resigning.
Saved sessions are stored in:
~/friendchallenge/sessions
This project is licensed under the BSD 3-Clause License.
FriendChallenge / International Word Games names, logos, and other branding are not granted for reuse by the software license.