Mozilla Jetpack approda alla versione 0.3. Ufficializzato verso la fine di maggio 2009 questo progetto dei Mozilla Labs sta lentamente uscendo dallo stato embrionale e arrivando a maturazione. Certamente il rilascio di Jetpack 1.0 non avverrà domani, ma già con le funzionalità a disposizione è possibile fare molto.
Jetpack, scusateci il gioco di parole, è una "estensione per sviluppare estensioni". Usando Jetpack è possibile scrivere una estensione per Mozilla Firefox usando solo le tecnologie per il Web: HTML, Javascript, e CSS. La curva di apprendimento si riduce, le potenzialità di espressione si moltiplicano, la portabilità del codice è assicurata al 100%. XUL diviene preistoria.
Nella pratica Jetpack crea un ambiente che consente da un lato di accedere alle risorse di Firefox e del sistema e dall´altro di creare la logica applicativa. Aggiungere un pulsante sulla barra principale, una icona gestita sulla barra di stato, oppure avviare un "worker" in background per svolgere attività di filtro e controllo dei contenuti è immediato, e veloce. È sufficiente creare gli opportuni oggetti JavaScript, associarvi delle azioni, agganciarli a Firefox e lasciarli eseguire.
Questa nuova versione di Jetpack arriva con due importanti novità: "action on selection" e "cliboard interaction". È possibile associare una azione da eseguire ad ogni selezione del testo, ed è possibile interagire con la clipboard di sistema per le operazioni di "cut and paste".
I fix e gli miglioramenti riguardano componenti come: SlideBar, Persistent Storage, e Prettier. In particolare, e questo è uno dei pochi scotti che bisognerà pagare quando si utilizza uno strumento giovane e in divenire, l´API SlideBar è stata rivista e migliorata a dispetto di perdita di retro-compatibilità. La gestione dei Persistent Storage ora avviene in maniera sincrona.
Se volte divertirvi con Jetpack, eccovi qualche link che vi consentirà di sviluppare una estensione in pochissimo tempo: tutorial introduttivo, Selection API, Clipboard API, SlideBar API, Persistent Storage.