JAMstack: geleia de JavaScript, API e Markup

O que significa e por que é considerada uma arquitetura moderna de desenvolvimento web?

Uma arquitetura moderna de desenvolvimento, vista como vanguarda na renascença de web sites estáticos, e com nome de um doce popularmente conhecido como GELEIA.

Criada por Mathias Biilmann, CEO do Netlify, JAMstack é uma filosofia de criação de sites estáticos que insere conceitos e práticas específicas dentro de um ecossistema tecnológico.

O objetivo de Mathias, apesar de diversas justificativas técnicas, era tornar a geração de sites estáticos legal e mainstream, novamente. Segundo ele, a arquitetura moderna da JAMstack:

“não é sobre tecnologias específicas. É um novo jeito de criar websites e aplicativos que entreguem melhor performance, alta segurança, baixo custo de escalabilidade, e experiência de desenvolvimento”

A base de toda estrutura JAM está na geleia do nome: JAM = JavaScript, APIs e Markup.

JAM

  • JavaScript, obviamente, é o componente responsável em popularizar a arquitetura. A linguagem é amplamente utilizada no mercado de desenvolvimento web. Em poucas palavras: JavaScript é o que providencia todas as funcionalidades dinâmicas e interativas para o sistema, sem restrições de frameworks (React, Vue, Angular, Svelte e afins)
  • Todas as funções do servidor, ou banco de dados, são manuseadas por APIs reutilizáveis, acessadas por HTTPS com JS.
  • Markup é o arquivo estático gerado por ferramentas de desenvolvimento de páginas web, como NextJS, Gatsby ou Create-React-App.

Benefícios no fluxo de trabalho

Em linhas gerais, numa definição bem abrangente, são sites desenvolvidos sem a dependência de um servidor. Entre os benefícios promovidos por esta arquitetura, estão: performance, segurança, baixo custo de escalabilidade e melhor experiência dev. Você pode conferir mais sobre JAMstack neste pequeno guia de boas práticas.

NextJS e Gatsby são ferramentas extremamente populares e poderosas no ecossistema de desenvolvimento JavaScript, a arquitetura de ambas foi construída com base nas boas práticas e na filosofia do JAMstack.

Caso em algum momento você criou sites estáticos utilizando um destes frameworks, você aderiu, mesmo que inconscientemente, ao JAMstack de forma automatizada.

No último #Decode, Diego Fernandes (CTO - Rocketseat) apresentou em LIVE a construção de apps JAMstack utilizando React e GraphQL.

Comunidade ainda é fator essencial

Apesar de ser visto como o “futuro do desenvolvimento web” como algumas arquiteturas e tecnologias prometem, é preciso de cuidados antes de afirmar qualquer previsão do tipo.

O crescimento da comunidade em volta dessa filosofia vem de casos de sucesso de novas tecnologias que aplicaram a arquitetura: Netlify, Gatsby, Contentful — para citar algumas.

Apesar de não estar mais em fase experimental, JAMstack ainda pode ser considerado um jeito novo, inédito, de programar, mas não é o único.

A primeira conferência exclusiva sobre JAMstack, para você ter uma ideia de quão recente ainda é, aconteceu em 2018.