Turn based multiplayer from scratch (no PlayFab)

I work as a web developer, and I recently acquired a new hobby - game development.

I tried making some small games - top down shooters, basic platformers - just to get a feel of the Unity Engine.
Now I want to try my hand at creating a basic turn based multiplayer board game - something like Uno or Ludo or a card game.

I had initially tried such a project using web technologies. At that time, I was able to achieve the same thing by running Socket IO on a NodeJS server.
The clients connected to that server using JS.

How do I achieve similar functionality in my Unity game? Most of the tutorials involve PlayFab or some other service.
I don’t want to use them.
I am not looking for any advanced features.
All I want is to write some basic server side code that I can host on an EC2 instance (or something similar) that my Unity clients (standalone / webgl) can connect to and communicate with in real time.

I don’t want to end up using a ton of boilerplate code from existing plugins (like Mirror).

This thread is a good starting point to find a networking solution: What are the pros and cons of available network solutions/assets

As it regards our SmartFoxServer, it supports WebGL and we also recently introduced our own AWS-based cloud service, so you don’t even need to worry about the hosting. You can find a few examples here: SmartFoxServer 2X documentation: introduction