capiconf2020-serverless-demo

Repositório responsável pelas demos relacionadas ao evento Capi Conf Online 2020

MIT License

Stars
0

Demo - CapiConf Online 2020: APIs Escaláveis com Node.js & Arquitetura Serverless

Repositório responsável pelas demos relacionadas ao evento Capi Conf Online 2020 CapiConf 2020 Online

Recursos Utilizados 🚀

Conta - Azure for Students ⭐️

Caso você seja um(a) estudante de alguma Instituição de Ensino de Faculdade ou Universidade, poderá criar sua conta no Azure for Students. Essa conta te dará o benefício em possuir crédito de USD 100,00 para usar os serviços de maneira gratuita, sem necessidade de possuir um cartão de crédito. Para ativar essa conta, bastam acessar o link ao lado: AQUI

Executando a Aplicação Localmente ❗️

Executando a aplicação no lado do Front-End

  1. Instalar os pacotes com o comando: (dentro da pasta front)
> npm install
  1. Depois executar o seguinte comando para executar a aplicação (dentro da pasta front):
> ng serve -o

Depois bastam abrir o browser em localhost:4200 (porta padrão de uma aplicação Angular)

Executando a aplicação no lado do Back-End

Antes de iniciar os passos abaixo é muito importante que você execute nesse momento o MongoDb localmente!

  1. Instalar os pacotes com o comando: (dentro da pasta api)
> npm install
  1. Depois executar o seguinte comando para executar a aplicação (dentro da pasta api):
> nodemon

Depois bastam abrir o postamn em localhost:8000 e testar as requisições

E vòilá! ❤️ ❤️

Consumindo as API's no Azure Functions(Mongo x CosmosDb) ⚡️

Visando facilitar o desenvolvimento e agilidade do projeto, já criei duas API que consomem esse projeto no Front-End. Para isso, seguem os links das apis:

API via MongoDb - Azure Functions

Essa API persiste localmente no MongoDb via Azure Functions.

Para executar, bastam seguir os seguintes passos:

  1. Baixar o projeto abaixo:
  1. Instalar as dependências necessárias com o comando:
> npm i
  1. Criar um arquivo chamado: local.settings.json e incluir o bloco de código abaixo:
{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "node",
    "AzureWebJobsStorage": "{AzureWebJobsStorage}"
  },
  "Host": {
    "LocalHttpPort": 7071,
    "CORS": "*"
  }
}
  1. Execute o comando:
> func host start

E ele irá listar todos os endpoints criados e necessários para persistir juntamente com o nosso Front-End.

  1. Agora abre o projeto front e vão até: src -> app -> funcionario.service.ts

  2. Ao entrar no arquivo funcionario.service.ts, basta alterar a uri para: http://localhost:7071/api

  3. Execute o projeto Angular com o comando:

> ng server -o

E vòilá! Só começar a persistir!

Links & Recursos Importantes ⭐️

Durante a live, comentei sobre importantes documentações, links e recursos que podem auxiliar o seu conhecimento sobre Serverless & Azure Functions

Tenho Dúvidas... O que Faço?! ❓

Caso tenham dúvidas aos códigos dos projetos relacionados a palestra, sintam-se à vontade em abrir uma ISSUE AQUI. Assim que possível, estarei respondendo as todas as dúvidas que tiverem!