Great apps require continuous improvement. Recently, I made a critical update to LocalOne Crosswords that I'd like to share with you.
A Necessary Change
After releasing LocalOne Crosswords, I received feedback about potential copyright concerns with using the XD crossword dataset. Though it's a fantastic resource for research, incorporating it directly into a commercial app raised legitimate intellectual property questions.
The solution was clear: I needed to create an entirely new, original dataset of crossword clues and answers.

LocalOne Crosswords
Now featuring 100% original, AI-generated clues that work completely offline!
The AI Clue Generation Process
To solve this challenge, I developed a specialized Python script that leverages OpenAI's API to generate completely original crossword clues. Here's how the process works:
- Word Selection: I maintained the same carefully curated word list, organized by difficulty level (easy, medium, hard).
- Clue Generation: For each word, I asked a large language model to create multiple original clues, matching the exact number needed for difficulty-appropriate variety.
- Quality Control: The script included specific instructions to generate diverse clue types (definition, wordplay, puns) while maintaining crossword standards.
- Batch Processing: To efficiently handle thousands of words, the script processed them in small batches, with smart retry mechanisms for error handling.
Before and After: Comparing Clue Quality
Here's an example showing the transition for the word "TEE":
Before (Dataset Clue)
"Golf peg"
After (AI-Generated Clue)
"What a golfer places their ball on"
The AI-generated clues maintain the essence of good crossword clues—clever, concise, and appropriately challenging—while being completely original.
Technical Implementation
For those interested in the technical details, the Python script:
- Uses OpenAI's API with contextual prompting to ensure clue quality and diversity
- Handles batch processing to efficiently generate thousands of clues
- Includes intelligent error handling with automatic retries
- Maintains separate files for different difficulty levels
- Creates a consistent JSON data structure that integrates seamlessly with the app
{
"WORD": ["First clue", "Second clue", "Third clue"],
"ANOTHER": ["Clever clue", "Alternative clue"],
...
}
Privacy-First Approach
In line with LocalOneLabs' commitment to privacy, all AI processing happened during development—not at runtime. The final product remains 100% offline, with no data collection or internet connectivity required.
The entire clue generation process was completed once during development, with the resulting dataset bundled directly into the app. This maintains our promise that all LocalOneLabs apps work fully offline with no data tracking.
Continuous Improvement
This update represents our commitment to both legal compliance and creating the best possible user experience. The new AI-generated clue dataset:
- Contains 100% original content
- Maintains the quality and difficulty balance of the original app
- Ensures complete copyright compliance
- Has been thoroughly tested for accuracy and appropriateness
Thank you for your support of LocalOne Crosswords. As always, we welcome your feedback and suggestions as we continue to improve our apps.
Warmly,