PyScript — Going Truly Serverless

Aneesha Bakharia
2 min readMay 15, 2022


Example Pyscript tag in HTML

I was very excited when Anaconda announced PyScript and finally got to spend a few hours tinkering. The result is a simple webpage using NMF from Scikit-Learn to perform topic modeling! That’s correct Numpy and Scikit-Learn running in a browser and finding topics from sentences entered into a textarea.

Try NMF | View Source Code

Potential to go truly serverless

So obviously serverless still involves a server somewhere in the cloud but I see PyScript as a way to go truly serverless. Functionality leveraging great Python libraries such as Scikit-Learn, Pandas, Numpy and Matplotlib that I would usually implement within an AWS Lambda, Container or EC2 can now be included in regular HTML (with an additional initial load time). I could for example build a plugin for a no/low code app builder (e.g., a visualisation recommendation system) that runs completely client side.


PyScript is still in alpha and it was not all smooth sailing. Here are some issues I encountered:

  • There is not a lot of documentation. I mainly looked at the examples to figure out how to trigger Python from HTML and write back to HTML.
  • The default stylesheet overwrites default HTML setting eg the H1 tag padding is changed.
  • When I placed the textarea within a form tag, each time the button was clicked all libraries were reloaded. I had to remove the form tag.
  • Outputting HTML using .innerHtml() caused an error.

More experiments going forward

I’ll be publishing more of my PyScript experiments.



Aneesha Bakharia

Data Science, Topic Modelling, Deep Learning, Algorithm Usability and Interpretation, Learning Analytics, Electronics — Brisbane, Australia