Twitter ha liberado un nuevo framework open source (y ya van unos cuantos) para que la comunidad de desarrolladores pueda usarlo e e ir colaborando en su mejora. Se trata de Flight, un framework javascript que propone una arquitectura desacoplada de componentes que se comunican entre sí a través de eventos y acciones. Fue desarrollado durante la reimplementación de la web que realizó Twitter este último año. En contraposición de otros que ofrecen un patrón MVC o la forma de presentar el HTML, Flight se centra en aplicar comportamiento a los nodos del DOM.
La potencia de Flight reside en que los componentes son totalmente independientes, los cuales se definen de forma separada asignandose a cada elemento del DOM que queramos dotar de acciones. Los componentes registran eventos y usan los mecanismos del DOM para mandar y recibir eventos. Cuando un componente recibe un evento, tan sólo tiene que realizar la acción asociada sin necesidad de depender de otros.
Un punto interesante es el uso de mixins, un conjunto de funcionalidades reutilizables entre componentes y otros mixins. Mientras los clásicos patrones de Javascript soportan una simple herencia, un componente puede tener múltiples mixins aplicados a él.
Todo lo relativo a Flight ha sido liberado en su proyecto de Github, donde podremos encontrar todo el código, documentación y algunos ejemplos, como una demo de un cliente de email. Para hacerlo funcionar necesitamos un par de dependencias: ES5-Shin para soportar navegadores antiguos y jQuery para la manipulación del DOM.
Más información | Flight Twitter Vía | Twitter