Apps natives, no un embolcall

Moltes apps que funcionen a tot arreu són, en realitat, una mateixa pàgina web posada dins d'un marc diferent a cada dispositiu. Caliu fa el camí llarg: cada app està feta amb les eines per a les quals es va dissenyar la seva plataforma. Costa més feina, i és el motiu pel qual el desplaçament, l'escriptura, les dreceres de teclat i l'accessibilitat es comporten com el teu dispositiu espera.

L'app web

L'app web està escrita en TypeScript amb React. És una Progressive Web App: un service worker guarda una còpia de tota l'app al teu dispositiu, així que arrenca i funciona sense connexió, i la pots instal·lar des del navegador com qualsevol altra app. Quan es publica una versió nova, no t'interromp mai: l'app t'ofereix l'actualització i l'aplica quan tu ho decideixes.

iPhone, iPad i Mac

Les apps d'Apple estan escrites en Swift amb SwiftUI, a partir d'un únic codi compartit per l'iPhone, l'iPad i el Mac. Tot i així, cada plataforma té la seva pròpia disposició i els seus propis costums: barra lateral i dreceres de teclat al Mac, gestos tàctils a l'iPhone i totes dues coses a l'iPad.

Com que són natives de debò, s'integren amb la resta del sistema: widgets, el full de compartir, Dreceres i Spotlight. L'app per a l'Apple Watch també està escrita en Swift, i és un client de sincronització complet per si mateixa: parla directament amb el servidor, així que tens les notes al canell encara que el telèfon no hi sigui.

Android

L'app per a Android està escrita en Kotlin amb Jetpack Compose, el conjunt d'eines de Google per a interfícies d'Android. Es va construir com una adaptació acurada de l'app d'Apple: la mateixa estructura, el mateix comportament i les mateixes proves, traduïdes cas per cas, perquè una nota es comporti exactament igual a totes dues.

Quatre apps al mateix pas

Quatre apps es podrien separar fàcilment. Uns quants hàbits les mantenen unides:

  • Regles compartides, proves compartides. Les regles que no han de variar mai, com la manera de reconèixer una #tag, de llegir el títol d'una nota o de posar en ordre la cua de sincronització, s'escriuen un cop per llenguatge i es comproven amb els mateixos casos de prova a totes les plataformes.
  • Una sola font per a l'aspecte. Els temes, les tipografies i el conjunt d'icones propi de Caliu es defineixen un sol cop i es generen per a cada app, així que un tema es veu igual en un Mac que en un telèfon Android.
  • Una sola traducció per a tot. Totes les apps estan disponibles en els mateixos idiomes, i els textos de l'app per a Android es generen a partir de les traduccions de l'app d'Apple, així que la redacció coincideix entre dispositius.

La feina es queda al teu dispositiu

Com que cada app és una app completa i no una finestra a un servidor, la feina pesada passa al teu dispositiu: la cerca, l'exportació a tots els formats i la presentació de les teves notes funcionen sense connexió.