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!!!!
Sans Forgetica es una fuente diseñada utilizando los principios de la psicología cognitiva para ayudar a recordar mejor[...]
Messenger Rooms es la nueva opción de videoconferencias de Facebook que permite realizar videollamadas con hasta 50 pers[...]
Project Lombok es una biblioteca para java que se conecta con su IDE (Integrated Development Environment – Entorno[...]
Alda es un lenguaje de programación desarrollado por Dave Yarwood el cual esta basado en texto para composición musical,[...]
Existe una gran cantidad de contenido sobre productividad, trucos, consejos y trabajo y más. Pero, ¿Qué pasa con esos mo[...]
En un post anterior [Introducción a VueJS framework para el desarrollo FrontEnd] realizamos una breve introducción a Vue[...]