Salta al contingut
TecnologiaPer Masumi Mutsuda

Ràpid, senzill i fiable: Jekyll

Quan vam decidir que necessitàvem refer la web d'itnig des de zero, vam aconseguir sintetitzar les nostres necessitats en tres paraules. Ràpid, senzill i fiable. Hi ha res més ràpid, senzill i fiable que l'html estàtic? Escriure una pàgina html estàtica en el món dinàmic en què vivim quedava fora de qüestió, però necessitàvem…

Quan vam decidir que necessitàvem refer la web d’itnig des de zero, vam aconseguir sintetitzar les nostres necessitats en tres paraules.

Ràpid, senzill i fiable.

Hi ha res més ràpid, senzill i fiable que l’html estàtic? Escriure una pàgina html estàtica en el món dinàmic en què vivim quedava fora de qüestió, però necessitàvem alguna cosa que ens permetés fer-ho d’una manera fàcil. Va ser llavors quan vam trobar Jekyll.

Jekyll et permet generar un lloc html estàtic a partir de components dinàmics com plantilles, partials, codi liquid, markdown, etc.

Estructura de dades

Les classes de dades s’estructuren en Collections, on cada col·lecció és una carpeta on cada instància es representa amb un fitxer. Cadascun d’aquests fitxers comença amb el que anomenen Front Matter, una capçalera on es defineixen tots els atributs de la instància. Aquest Front Matter és el que permet les relacions entre classes, el filtratge, les consultes, etc.

Les classes que no necessiten una representació en pàgina html es guarden mitjançant Data Files (un fitxer CSV típic) en lloc de representar-se amb un fitxer dins d’una col·lecció. En el nostre cas, els utilitzem per emmagatzemar les persones que treballen a les nostres startups.

Origen de les dades

Podríem crear manualment un fitxer a la col·lecció _jobs cada vegada que tenim una nova oferta de feina, o un nou fitxer a la col·lecció _events cada vegada que tenim un esdeveniment, però ens encanta optimitzar el temps, i ja actualitzem les nostres ofertes de feina a Workable i els nostres esdeveniments a Meetup, així que per què no utilitzar les seves APIs? Doncs això és exactament el que fem. Executem periòdicament un script que recupera totes les ofertes de Workable creant un fitxer per a cadascuna, que després es guarda a la col·lecció _jobs. Fem el mateix amb els propers esdeveniments i també utilitzem l’API de Google Drive per recuperar l’última versió del fitxer CSV de persones.

Disseny

Una vegada definida l’estructura i creades algunes dades, pots començar a treballar en el disseny. Pots definir propietats i atributs en qualsevol fitxer utilitzant el Front Matter, i obtenir i jugar amb les dades prèviament creades utilitzant Liquid (un motor de plantilles creat per Shopify), per finalment mostrar-les mitjançant HTML.

Conclusions

Després de treballar i mantenir un lloc Jekyll durant un parell de mesos, puc dir que compleix les nostres expectatives, però hi ha un parell d’inconvenients que hauries de tenir en compte abans de llançar-te a adoptar-lo.

El primer és precisament el que el fa ràpid i fiable, és a dir, la manca de backend. Abans de triar Jekyll, hauràs de preguntar-te si el teu projecte és prou senzill per evitar el registre d’usuaris i un modelatge complex de classes i base de dades. Si ho és, endavant.

El segon és la manca d’un “backoffice” per a persones no tècniques. Cada vegada que actualitzem manualment el contingut d’un fitxer (afegint per exemple l’url del vídeo d’un esdeveniment un cop és en línia), cal sincronitzar-lo amb el repositori utilitzant git, i desplegar-lo al servidor on està allotjat el lloc. Això pot semblar senzill i net des de la perspectiva del desenvolupador, però quan el contingut l’han d’actualitzar usuaris no tècnics, això pot ser un problema. Hauràs d’assegurar-te que la persona que gestiona el contingut sap o està disposada a aprendre git.

Articles relacionats

Tecnologia

Com millorar la generació de leads amb aquestes 6 estratègies de màrqueting SaaS

Els negocis SaaS necessiten una generació constant de leads per assolir l'èxit. Fer-ho és molt més fàcil de dir que de fer, així que les empreses no paren d'implementar noves idees per generar més leads. La llista d'estratègies de màrqueting utilitzades per a la generació de leads no para de créixer cada any, així que hi ha moltes coses diferents amb què pots experimentar.

Llegir-ne més
Tecnologia

Se acabó el server side rendering?

Fa un parell de setmanes, Google va anunciar una actualització molt esperada del googlebot. Ara funciona amb el motor chrome versió 74, el mateix que fem servir actualment als nostres Chromes. A més, va anunciar que a partir d'ara continuarà fent actualitzacions periòdiques per garantir el suport continuat de les noves tecnologies web.

Llegir-ne més
Tecnologia

Scripting de fulls de càlcul per al viatge d'esquí

Portem organitzant viatges d'esquí de l'Itnig des dels inicis. Recordo que quan vam començar hi cabíem tots en un cotxe, després en una furgoneta, més tard vam haver de llogar un parell de cotxes per poder anar-hi, aviat vam haver de compartir un autobús amb altra gent i ara necessitem un autobús...

Llegir-ne més