Pyodide es un proyecto experimental de Mozilla que proporciona un intérprete de Python que se ejecuta completamente en el navegador. Tiene acceso completo a todas las APIs que proporciona un navegador. Si bien Pyodide esta estrechamente relacionado con el proyecto Iodide (Herramienta experimental para la comunicación científica y la exploración en la web), también se puede utilizar de forma independiente en cualquier contexto en el que desee ejecutar Python dentro de un navegador web.
Pyodide le ofrece un intérprete de Python completo y estándar que se ejecuta completamente en el navegador, con acceso completo a las API web del navegador. Como ejemplo la pagina de Mozilla presenta un script simple que permite dibujar en la ventana del navegador
from js import document, iodide canvas = iodide.output.element('canvas') canvas.setAttribute('width', 450) canvas.setAttribute('height', 300) context = canvas.getContext("2d") context.strokeStyle = "#df4b26" context.lineJoin = "round" context.lineWidth = 5 pen = False lastPoint = (0, 0) def onmousemove(e): global lastPoint if pen: newPoint = (e.offsetX, e.offsetY) context.beginPath() context.moveTo(lastPoint[0], lastPoint[1]) context.lineTo(newPoint[0], newPoint[1]) context.closePath() context.stroke() lastPoint = newPoint def onmousedown(e): global pen, lastPoint pen = True lastPoint = (e.offsetX, e.offsetY) def onmouseup(e): global pen pen = False canvas.addEventListener('mousemove', onmousemove) canvas.addEventListener('mousedown', onmousedown) canvas.addEventListener('mouseup', onmouseup)
Y esto es lo que parece:
Para crear Pyodide, el equipo ha utilizado el código fuente del intérprete de Python, CPython y los paquetes de computación científica, como NumPy. Hicieron algunos pequeños cambios para que estas herramientas funcionaran en el nuevo entorno. Y finalmente el código se compiló a WebAssembly utilizando el compilador de Emscripten.
Pero la mejor manera de aprender más sobre la capacidad de Pyodide es probarlo y para esto Mozilla deja un Demo Notebook (50 MB) que recorre las funciones de alto nivel.
Para leer más del proyecto Pyodide visita hacks.mozilla.org
enjoy!!!!
La misión espacial de la NASA, el Mars 2020 Rover Mission esta proyectada para lanzarse en julio de 2020 y su llegada s[...]
De las pocas herramientas disponibles entre librerías, frameworks, engines, etc para el desarrollo de videojuegos en len[...]
Cada día aparecen cientos sino es que miles de nuevos sitios web en el mundo, pero son muy pocos las webs verdaderamente[...]
El gigante de la tecnología Microsoft ha lanzado un mapa interactivo para proporcionar información sobre la propagación[...]
Así es, el Salar de Uyuni ubicado en el suroeste de Bolivia con una extensión de 10582 Km2 y a una altitud 3663 mts sobr[...]
123d.circuits.io es una aplicación web propiedad de Autodesk que permite construir circuitos en un protoboard virtual. C[...]