I see lot of the comments posted above address the current problems you have but no one really gave you a solution. The cheating problem exists, Yes! Can it be solved? Obviously! There are a lot of ways, you can prevent a bot from accessing the game or pretending to be a user. Something as simple as a video must be important for both the users playing the game or you run your game into an Iframe with secure inputs or dynamic html tag names to prevent it from bots.
Thanks Patatas, Making sure that a bot will not access to the game is actually not that complicated, (I could trigger a captcha each 5 min, or randomly during the game) my concers is what other users mentioned, third party software where you can input current state of a board and the user would just copy that over to the site, how could I solve this issue?
I saw some comment of a guy in chess.com proposing a solution.
If a user always does the "perfect move" then it might could indicate that the user is cheating, but could it be the case of a real user making the perfect move always in row? whats the chance of that happening?
Anyway I'm happy to see people supporting and liking the idea, but I need a solution to the mentioned above