Kaiten est un nouveau modèle de navigation pour des applications web. Contrairement aux applications conventionnelles où chaque écran remplace le précédent, Kaiten empile les écrans côte à côte horizontalement, comme des colonnes (appelées Panels), et offre à l’utilisateur une expérience de navigation tout en continuité.
Un panel est un conteneur pour tout type de contenu qui doit être affiché sur l’écran. Lorsqu’un nouveau contenu arrive, Kaiten le met dans un panneau qui est placé à côté de son prédécesseur. Le résultat de l’interaction entre l’utilisateur et l’application est un flux continu et logique d’écrans.
Comment Kaiten sait où trouver l’information ? D’hyperliens vers d’autres contenus et pas toujours de la même origine ! Par exemple, vous faites une recherche sur Google sur votre écrivain préféré et vous trouvez un article de Wikipedia le présentant. Puis à partir de Wikipédia, vous découvrez le lien de son site personnel, et de là, le lien de son compte Twitter…
Kaiten pourrait simplement intercepter tous ces liens et les placer à l’intérieur d’un iframe. Mais vous pourriez vouloir ou avoir besoin de faire quelque chose avec le contenu avant qu’il ne soit retourné… C’est ici qu’interviennent les Connecteurs. Avant d’exécuter Kaiten vous devez l’informer sur les différents types de contenu que vous souhaitez gérer. Cela se fait grâce aux connecteurs. Chaque fois Kaiten “attrape” un lien (ou n’importe quoi d’autre de type “appel à contenu”), il traverse l’ensemble de ses connecteurs. Chaque connecteur dit «Oui ceci est le mien pour faire quelque chose» ou «Non, je ne sais pas ce que c’est» . Si Kaiten a trouvé un connecteur il l’exécute sinon il revient vers un “connecteur par défaut”.
Kaiten est livré avec des connecteurs de base intégrés :
- “Html.string”, pour “formatter” le contenu “statique” HTML.
- “Html.page”, pour obtenir le contenu HTML à partir du serveur.
- “Iframe”, pour le chargement des URLs externes dans une iframe.
Enfin, un connecteur est un objet JavaScript qui a au moins trois méthodes :
- Connector.connectable () : Retourne “true” ou “false” si il peut ou non “gérer/traiter l’appel” ou non
- Connector.getData () : Retourne les données qui sont nécessaires pour traiter l’appel. Ils seront donnés à ” Connector.loader ()”
- Connector.loader () : Gère l’appel et renvoie le contenu.
Kaiten tire son nom de kaiten-zushi, le restaurant où les sushis sont présentés sur un tapis roulant continu. Tout comme le tapis roulant, Kaiten présente les écrans en les bougeant sur un espace continu et infini.
Kaiten est un logiciel libre écrit en Javascript. Vous pouvez télécharger Kaiten sous la forme d’un plug-in jQuery et créer vos propres applications et connecteurs. Pour une utilisation intégrée, téléchargez l’extension KaitenBrowser pour Firefox !
Site Internet : Kaiten
Licence : GPL v3