Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Aha43/friendchallenge

Repository files navigation

Friend Challenge

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.

Status

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

Design Goal

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

Security Model

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.

Current User Flow

Create a challenge

  1. Open the app.
  2. Choose Challenge -> New Wordle Challenge.
  3. Enter title, prompt, answer, and optional reveal message.
  4. Generate email-safe challenge text.
  5. Copy the text and send it by email.

Import a challenge

  1. Receive challenge text by email.
  2. Copy the full text including the begin/end markers.
  3. Choose Challenge -> Import Challenge.
  4. Paste the text.
  5. Play the game in a new tab.

Saved games

Game sessions are saved automatically after important actions such as importing, guessing, solving, failing, or resigning.

Saved sessions are stored in:

~/friendchallenge/sessions

License

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.

About

Game chalenges between friends

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors