JSFiddle - React, Tailwind, and code Playground

by GamesMint

HTML

<div>
            <span>Player:</span>
            <span id="playerScore">0</span>
            <span>Bot:</span>
            <span id="botScore">0</span>
        </div>
        <canvas id="canvas_main"></canvas>

CSS

.modalParent{
		    position: relative;
		    max-width: 330px;
		    padding: 20px;
		    margin: 0;
		    border-radius: 4px;
		    background-color: #fff;
		}
		.parentModal {
		    position: fixed;
		    top: 0;
		    right: 0;
		    bottom: 0;
		    left: 0;
		    padding: 15px;
		    overflow: auto;
		    background-color: rgba(0, 0, 0, 0.88);
		}

JavaScript

var sudokuData = new function() {
                return {
                    sudokuBank: 
                                        ["835416927296857431417293658" +
                                                "569134782123678549748529163" +
                                                "652781394981345276374962815",
                                        "534678912672195348198342567" +
                                                "859761423426853791713924856" +
                                                "961537284287419635345286179",
                                        "827154396965327148341689752" +
                                                "593468271472513689618972435"+
                                                "786235914154796823239841567"],

                    sudokuBankSinglePlayer : [
                                "957613284483257196612849537" +
                                        "178364952524971368369528741" +
                                        "845792613291436875736185429",
                                "315827946468915732729346518" +
                                        "946538127571692483832174695"  +
                                        "693251874257489361184763259"
                        ],
                    
                    prefillGridData: [
                                        "000000200080007090602000500" +
                                        "070060000000901000000020040" +
                                        "005000603090400070006000000",

                                        "000800000400015030029040518" +
                                        "040000120000602000032000090"  +
                                        "693050870050480001000003000"
                        ]
                    }
            };

            var gameModule = function () {
                var botScore = 0;
                var playerScore = 0;
                var bw = 360;
                var bh...