Here are the steps I took to get a bare bones instance of ElectrumX up and running on Windows 10 with the Windows Subsystem for Linux:
First, some backstory. For some reason, I couldn't get rid of an underlying instance of python3.5 on (at least my copy of) the Windows Subsystem for Linux. I *also* couldn't get python3-pip to install without it also wanting to pull python3.5 dependencies. Because of this, I had to make sure to always explicitly call python3.6 when running everything. Also, for whatever reason, the installation required using sudo in places where you normally wouldn't.
So, assuming you already have the Windows Subsystem for Linux up and running, and you have a Bitcoin node running with txindex=1 and rpc configured and ready to connect to, here are the commands I ran to get a very bare bones copy of ElectrumX up and running:
sudo apt-get install python3.6 python3.6-dev
sudo apt install python3-pip
sudo python3.6 -m pip install --upgrade pip setuptools wheel
sudo apt-get install libleveldb-dev
sudo python3.6 -m pip install aiohttp pylru leveldb plyvel
mkdir ~/source
cd ~/source
git clone
https://github.com/kyuupichan/electrumx.gitcd electrumx
sudo python3.6 -m pip install jaraco.collections
sudo python3.6 setup.py install
(keep repeating this install command until *all* packages actually download and install without errors)
mkdir ~/.electrumx
cd ~/.electrumx
(for more on configuring the following ssl certificate stuff, see the following tutorial, midway down the page:
https://freedomnode.com/blog/69/how-to-install-an-electrum-server-using-full-bitcoin-node-and-electrumx )
openssl genrsa -des3 -passout pass:x -out server.pass.key 2048
openssl rsa -passin pass:x -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr
(make sure to customize the following to point to your own user directory to point to the above .electrum path, and using your, preferably random, Bitcoin node rpc username and password)
export DAEMON_URL=http://rpc_username:rpc_password@localhost:8332/
export DB_DIRECTORY=/home/mmortal03/.electrumx/
export SSL_CERTFILE=/home/mmortal03/.electrumx/server.crt
export SSL_KEYFILE=/home/mmortal03/.electrumx/server.key
export CACHE_MB=600
python3.6 ~/source/electrumx/electrumx_server.py