One thing with WSL(Ubuntu in my case) when running GUI apps, by default it sets an environment variable $NAME to the machine name, the same environment variable is used in picolisp for httpGateway. This will cause apps not running as expected. CSS won't load, etc... Running pil from the prompt like this worked "NAME= pil ....." solved the issue. Thanks to Abu for debugging this out .