This ain't a readme.
Push and pull from crunched only activates after it's created.
Better checking. Currently it just checks if something contradicts all solutions. But you could have a Frankenstein solution that combined different bits from different solution, and while all parts individually would be correct, as a whole it would not. Need some way to figure out what the BEST match is, and then compare to that? Trouble is you don't want to put people off potential solutions. Maybe if there's more than one solution, say explicitly: "This puzzle has more than one solution, so it's harder to check. Highlighted the bits that match NO solution. Also beware that your solution as a whole does not match any solution." Everything here matches at least one solution, but as a whole they don't"?
Improve input validation in line -- currently it lets you input things in the wrong order. It just shoudln't let you do that in the first place.
- Saves the current states of the grid, line and crunched - not implemented
- Solves the puzzle
- Makes everything uneditable - implemented, but defect with the small cells in the grid
- Restores the saved states of the grid, line and crunched from solved
- Clears everything
[48,11,12,30,24,13,14,27,26,15,16,28,36,22,23,49] [null,null,null,2,3,3,null,6,7,null,9,null,null,null,null,null]
[380,36,308,96,48,350,33,279,252,78,270,57,81,296,39,260] [3,4,null,6,7,null,null,null,20,null,null,null,50,74,null,null]
[490,32,220,77,61,240,49,168,150,46,255,31,88,228,53,492] [2,3,4,null,null,12,null,15,null,null,null,null,null,57,null,null]
- Tap on an option in the crunched factors to select it. Tap a second time to reject it. Tap again to reset to ‘unused’. If selected:
- Highlight it, and its pair
- Add its numbers (if possible) to the line
- Add its numbers to the grid
- Highlight the grid and the line accordingly items
- Button above crunched numbers to push those selections to the grid.
- Stuff populated in the grid gets pushed to the crunched numbers by default (though it can be overridden?? Think it can't be overridden — that probably creates confusion. Options that would cause the crunched to contradict the grid would stop being clickable. So you have a button that lets you push new stuff into the grid, but you can't contradict it.)
- Button to order grid numerically
- Working number line — all numbers from all in rejected pairs
- Take a picture of the puzzle and automatic optical conversion
- Kind of data heavy. May need to warn, or to only download that bit of the page once someone tries to use the feature
- Get hints
- ‘known but unplaced’ line numbers
- Mobile: The numbers in the crunched area can be too wide for the screen. See the default!
- Mobile: 2- and 3-digit numbers are too big for the line boxes
- On mobile we should force numbering rather than numbers? Is that possible?
- Bake in testing
- Singles can be called independently
- Function that checks which of the various bits of logic (brute force, etc.) can been applied, and returns the new version with some description of what's happened
- If an operand appears the exact number of times in the number line as in the pairs, then pair.
- If an operand cannot possibly appear in the line, remove the pairs
- Too big
- Too small
- No gap
- If an operand appears in all of a grid item’s potential pairs, then it can only be that
- If an operation appears in of a grid’s potential items, then it can only be that
- When placing a 1 in the line, always place it to the furthest left.