Google ha reso disponibili su GitHub i sorgenti di Mesop. Un framework basato su Python che consente di realizzare Interfacce Utente in modo molto veloce, con poche righe di codice. Fino ad ora questa soluzione è stata utilizzata internamente a Mountain View per lo sviluppo di applicazioni e demo. Tra i suoi vantaggi vi è la disponibilità di componenti pronti all'uso, come per esempio "chat" che consente di creare rapidamente una UI per la messaggistica.
Installare Mesop
Per integrare il framework nel proprio ambiente di sviluppo è sufficiente lanciare la seguente istruzione basata sul package manager pip
da terminale:
$ pip install mesop
Fatto questo è possibile testare il buon funzionamento di Mesop tramite il classico "Hello World":
import mesop as me
@me.page()
def app():
me.text("Hello World")
Una volta salvato il codice, ad esempio in un file chiamato hello_world.py
, lo si potrà eseguire in questo modo:
$ mesop hello_world.py
I componenti
Come anticipato, il framework dispone di un gran numero di componenti nativi. La maggior parte di essi è stato sviluppato utilizzando Angular, altra soluzione Open Source di Big G, e JavaScript. Si tratta in buona parte di wrapper di componenti Angular Meterial, in altri casi di wrapper sviluppati intorno a componenti DOM.
Mesop, open-source Python UI framework used at Google to build AI/ML apps - Open sourced by Googlehttps://t.co/8TKoX9a6xH
— Rohan Paul (@rohanpaul_ai) June 5, 2024
È sempre possibile utilizzare dei componenti personalizzati dato che questi ultimi non sono altro che funzioni Python che, a loro volta, richiamano altri componenti nativi o definiti dall'utente.
Caratteristiche del progetto
Mesop è uno strumento ideale per chi conosce Python e desidera sviluppare applicazioni Web senza utilizzare codice HTML, CSS e JavaScript.
Il framework consente di sviluppare utilizzando codice Python idiomatico (o Pythonic) rendendolo particolarmente leggibile e facile da mantenere. Viene inoltre supportato l'hot reload, questo significa che le pagine Web potranno essere ricaricate nel browser conservando lo stato corrente. Ciò permette di testare eventuali modifiche in real time senza la necessità di aggiornamenti manuali.