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.