AboutWhat I doProjectsLabContact
  • NEXT.JS
  • WEBASSEMBLY
  • CLOUDFLARE
  • CI/CD

This very site

This very site

This portfolio is hand-built with Next.js and deployed on Cloudflare Workers, with a model lab that runs entirely in the browser and continuous deployment on every commit. Code at github.com/jmweb-org/jmweb-pag-web.

Building this site is an engineering project in its own right: the Cloudflare Workers free plan sets a hard 3 MB compressed limit on all server code, so everything heavy — models, visualisations, a Python interpreter — has to live and run in the visitor's own browser.

  • Worker size1.73 MB
  • Plan limit3 MB
  • In-browser demos9+

Everything heavy runs in your browser

The lab's models (an MNIST digit classifier, word embeddings, an attention map) and the WebAssembly playground never touch a server: weights are served as static files, the forward pass runs in JavaScript, and the Python interpreter runs compiled to wasm, all inside the visitor's tab.

A worker on a diet

The code that runs on the server cannot exceed the free plan's 3 MB compressed limit. Libraries like three.js, tokenizers and audio or video players live behind client-only dynamic imports so they never reach the server bundle, and CI watches the worker's weight on every deploy.

It deploys and watches itself

Every push to master triggers automatic tests, a build and a deploy. The PyPI download counts shown on the site refresh on every pipeline run, and a separate workflow checks the credit-risk model every 12 hours to catch anything that stops responding. The code is public at github.com/jmweb-org/jmweb-pag-web.

Shall we connect?

Let's talk: feedback, collaboration or an opportunity.

You can write to me about a project, a technical question, to give me feedback, or about an internship or a first junior role. I always reply.

Write to me

Next projects:

Built with

PythonPyTorchscikit-learnpandasNumPyJupyterHugging FaceLangChainFastAPIPydanticDockerGitHub ActionsPrometheusGrafanaMLflowPostgreSQLGitGitHubLinuxStreamlitSQLiteAnthropicBashPyPIOllamaPythonPyTorchscikit-learnpandasNumPyJupyterHugging FaceLangChainFastAPIPydanticDockerGitHub ActionsPrometheusGrafanaMLflowPostgreSQLGitGitHubLinuxStreamlitSQLiteAnthropicBashPyPIOllama
hola@jmwebsoluciones.com