Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Noticias / Mozilla presenta Pyodide

Mozilla presenta Pyodide

Por jc mouse jueves, abril 18, 2019

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.

mozilla Pyodide

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!!!!

Tags

Artículos similares

WhatsApp: Disponible función de envío de fotos y videos que desaparecen tras ser vistos

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es[...]

Simulador de Arduino on line

123d.circuits.io es una aplicación web propiedad de Autodesk que permite construir circuitos en un protoboard virtual. C[...]

Visualiza JSON de forma gráfica y rápida en VSC

JSON Crack es un plugin para Visual Studio Code que permite analizar, validar y depurar archivos JSON de manera rápida y[...]

Crea y usa Traits en Laravel

¿Qué es un Trait en Laravel? Los Trait son una forma que laravel tiene para reutilizar el código, son similares a las cl[...]

Navega por Internet como si estuvieras en los 90!!!

En diciembre de 1990 se desarrolló una aplicación llamada WorldWideWeb en una máquina NeXT (programado con el lenguaje O[...]

Autenticación basada en API Keys en Laravel 12

La autenticación basada en API keys es un método para proteger el acceso a una API. Se utiliza una clave alfanumérica ún[...]