Add crossword puzzle item type
Admin enters Across/Down words and clues; server auto-generates the grid using a backtracking placement algorithm (longest-first, intersection-based). Students fill in the interactive grid with click-to-select, direction toggle, arrow-key navigation, and Tab-to-next-word. Auto-graded per word on submit, with correct/wrong color highlighting on the results view. Includes a print worksheet option for blank paper practice. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
60bfe3ca4a
commit
682534a061
6 files changed
+680
-6
No files matched your search
@@ -130,6 +130,7 @@
|
||||
<option value="spelling_practice">✏️ Spelling Practice</option>
|
||||
<option value="spelling_test">⭐ Spelling Test</option>
|
||||
<option value="matching">🔤 Matching</option>
|
||||
<option value="crossword">⬛ Crossword</option>
|
||||
<option value="flashcards">🗂️ Flashcards</option>
|
||||
</select>
|
||||
</label>
|
||||
@@ -247,6 +248,26 @@
|
||||
<button type="button" id="ie-add-pair" class="secondary">+ Add pair</button>
|
||||
</div>
|
||||
|
||||
<div id="ie-field-crossword" class="ie-field" hidden>
|
||||
<div class="cw-entry-cols">
|
||||
<div>
|
||||
<h3 style="margin-bottom:.5rem">Across clues</h3>
|
||||
<div id="ie-across-clues"></div>
|
||||
<button type="button" id="ie-add-across" class="secondary small">+ Add across clue</button>
|
||||
</div>
|
||||
<div>
|
||||
<h3 style="margin-bottom:.5rem">Down clues</h3>
|
||||
<div id="ie-down-clues"></div>
|
||||
<button type="button" id="ie-add-down" class="secondary small">+ Add down clue</button>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-top:1rem;display:flex;gap:.75rem;align-items:center;flex-wrap:wrap">
|
||||
<button type="button" id="ie-crossword-generate" class="secondary">⚡ Generate crossword</button>
|
||||
<span id="ie-crossword-status" class="hint"></span>
|
||||
</div>
|
||||
<div id="ie-crossword-preview" style="margin-top:.75rem;overflow-x:auto"></div>
|
||||
</div>
|
||||
|
||||
<div id="ie-field-spelling" class="ie-field">
|
||||
<label>Word list <select id="ie-list"></select></label>
|
||||
</div>
|
||||
|
||||
Reference in new issue
Block a user