Crossword Generator - Script for creating puzzles with specific JSON format

Job ID: 39077877

Budget: $30 – $250 USD

I need a program/script that automatically generates crosswords and exports them in a specific JSON format for my Android application.

Main Requirements:
1. The program must receive a list of words as input
2. Must place words in a 10x10 grid, crossing them optimally
3. Words can be placed horizontally or vertically
4. Must generate a JSON file with the following exact format:

{
"level": {
"id": "string",
"image_url": "string",
"cols": 10,
"rows": 10
},
"words": [
{
"word": "WORD",
"positions": [
{
"x": number,
"y": number
}
],
"direction": "horizontal|vertical"
}
]
}

Technical Specifications:
- Each word must have its positions defined in x,y coordinates (0-9)
- The program must maximize the number of crossings between words
- Words cannot overlap incorrectly
- Must validate that all words fit within the grid
- The "id" and "image_url" fields can be dummy values

Deliverables:
1. Program source code
2. Usage instructions
3. Basic documentation
4. Output examples in JSON format

The programming language is Java 17.