Deno Deploy 101
Fala pessoal, como estão todos? Espero que bem.
Hoje eu vim escrever sobre algo muito legal que descobri via YouTube, estava navegando por vídeos aleatórios e encontrei esse aqui Deno Deploy: Crazy Fast Cloud Functions - Architecture Speedun
A principio eu achava que era um conteúdo relacionado com deploy de código escrito em Deno no Cloud Functions do Google, mas ao fim descobri que é uma ferramenta própria para deploy de 'funções' da própria runtime Deno.
Aos que não conhecem, Deno é uma runtime JavaScript/TypeScript focada em segurança, idealizado pelo criador original do NodeJS Ryan Dahl em 2018.
Enfim, o que é o Deno Deploy?
Deno Deploy is a distributed system that runs JavaScript, TypeScript, and WebAssembly at the edge, worldwide. The service deeply integrates the V8 JavaScript runtime with a high performance asynchronous web server to provide optimal performance without unnecessary intermediate abstractions.
Em miúdos e com um português simples de se entender, ele se equivale ao Azure Functions da Azure, aonde podemos criar um projeto, efetuar um deploy e ter um endpoint sem precisar se preocupar com a infraestrutura.
Mas o que torna ele bem interessante é a facilidade com que consigo dar um deploy, e é isso que iremos fazer em seguida.
(Deno Deploy ainda está em beta e é gratuito, provavelmente quando sair do beta teremos planos para suprir demandas enterprise, o Marx pira)
Hello World IMC
No vídeo em questão o autor do conteúdo vai bem além e cria tanto uma função para atuar no backend, como também cria um frontend para consumir esse backend! Tudo isso 'hospedado' (hospedado virou um termo cringe será?) no Deno Deploy.
Eu já não quero ir muito longe, quero só construir uma função que retorna o seu IMC de acordo com seu input peso e altura.
O projeto se encontra nesse repositório e eu acredito que ele é auto explicativo, o foco aqui é mostrar o quão fácil é dar um deploy disto.
Recomendados pelo LinkedIn
Enfim o Deploy
Beleza, com o código publicado no meu GitHub, eu só preciso agora criar um novo projeto no Deno Deploy.
Criar uma conta no Deno Deploy é gratuito e fácil, e assim que sua conta é criada você se depara com essa tela, que resumindo está esperando que você crie um projeto para deploy.
Eu decidi criar um projeto chamado 'another-imc-calculator', um nome bem original diga-se de passagem, e ao fim do processo eu tenho a tela do projeto abaixo. Eu não irei colocar o processo de criar um projeto pois ele pede apenas um input, que é o nome do projeto.
E como vocês podem ver, ele dá um exemplo de como fazer um Hello World, e o Deno Deploy tem uma documentação própria expondo a API disponível para os nosso projetos.
E basicamente agora eu só preciso apontar o meu projeto para o arquivo com meu código da calculadora IMC, e pronto! Clique em Settings e depois vá em Git.
E é isso, segue a URL da função publicada e pronto para uso, foi mais difícil escrever esse artigo! A partir de agora qualquer update nesse arquivo, o reflexo é imediato na URL!
It's a Deno World!
Abraços!
Business Intelligence Specialist na Kumulus
3 aVou testar haha
Sócio fundador da Voreios Tecnologia, gestor de Segurança da Informação no IFRR e colaborador em software de repositórios de código aberto nas horas vagas.
3 aParabéns e obrigado Kayo!