AWS Amplify simplifica a criação de aplicativos móveis
O AWS Amplify é uma estrutura projetada para facilitar a criação de aplicativos nativos e da Web. Ele se concentra em ter um back-end totalmente construído pronto para uso, executando uma API e um banco de dados com autenticação é tratado por você.
O que é o AWS Amplify?
O Amplify não substitui uma estrutura como o React, você é livre para usar o front-end que desejar (embora React, React Native, Vue, Android e iOS sejam os mais adequados com suporte específico). bibliotecas). O Amplify manipula o back-end, como executar um servidor de API, gerenciar o banco de dados e autenticar clientes.
Quando você cria um projeto Amplify, os recursos de back-end serão provisionados automaticamente usando o CloudFormation. Quando você adiciona uma API, você será solicitado a definir o esquema e uma tabela do DynamoDB será criada para você, com os métodos do manipulador para inscrever, consultar e atualizar as entradas também. Se você deseja agrupar uma ferramenta de gerenciamento de estado de terceiros, como o Redux, no back-end do Amplify, você pode fazer isso também.
Para autenticação, o Amplify pode ser conectado ao Amazon Cognito, um serviço versátil de gerenciamento de identidades. O Cognito pode lidar com MFA, login e inscrição de usuários, serviços de diretório e logins federados para provedores sociais (Google, Facebook) ou até mesmo seu próprio servidor Active Directory sobre SAML.
O Amplify também contém uma biblioteca de interface do usuário cheia de componentes úteis, semelhantes ao Bootstrap. No entanto, a biblioteca de interface do usuário do Amplify é focada em fluxos funcionais, como inscrição e login de usuários, upload de arquivos e fotos e chatbots da AWS Lex. O uso do componente de autenticação, por exemplo, facilitará a conexão do seu aplicativo ao back-end de autenticação do Amplify (Cognito).
É claro que você pode estendê-las com seu próprio código e cores, se você não é fã da laranja icônica da AWS.
Primeiros passos
Se você gostaria de entrar e brincar com o Amplify, a configuração é bem simples. Instale a CLI do Amplify globalmente a partir do npm:
npm install -g @ aws-amplify / cli
Para o aplicativo real, inicializaremos um aplicativo React básico usando o próprio modelo inicial de criação e reação de aplicativos do React:
npx criar-reagir-aplicativo amplificar
cd nesta nova pasta e instale o Amplify como uma dependência npm:
npm install @ aws-amplify / api @ aws-amplify / pubsub
Execute o npm start e você verá o logotipo do React girando aberto no seu navegador.
Se você quiser usar a biblioteca de interface do usuário opcional do Amplify, ela estará disponível como um pacote separado para o React:
npm install aws-amplify-react
Depois que tudo estiver instalado no lado do cliente, você poderá configurar seu projeto Amplify usando a CLI:
amplifica init
Isso solicitará algumas informações, como o nome do ambiente (dev, prod etc.), o tipo de aplicativo que você está construindo (JavaScript, React Native) e a fonte e configuração de compilação. Entre com tudo, conforme necessário, e o Amplify levará um segundo para configurar seu back-end.
Isso conectará o Amplify ao console da AWS, mas você precisará fazer mais algumas configurações para colocar a API em funcionamento.
Adicionando uma API
Para configurar o back-end da API do Amplify, execute:
amplifique e adicione api
Isso fará algumas perguntas, sendo a primeira o seu tipo de API. Se você deseja usar uma API GraphQL ou Rest, precisará fazer essa escolha aqui. Iremos com o GraphQL.
Você também precisará escolher um esquema de autenticação. Se estiver apenas testando, poderá escolher a chave API para autenticar no desenvolvimento. Porém, na produção, você provavelmente desejará configurar o AWS Cognito para gerenciamento de usuários e vinculá-lo ao Amplify, que é o esquema de autenticação recomendado para aplicativos Amplify.
Você será solicitado a definir o esquema da sua API, que será aberto no seu editor de texto padrão. O Amplify usará isso para configurar o DynamoDB.
Depois de configurado, execute amplify push para enviar as alterações para a nuvem. O Amplify perguntará se você deseja criar as funções GraphQL para interagir com sua API, o que gerará automaticamente os métodos para consultas, assinaturas e mutações.
Na primeira vez que você pressiona, uma tabela do DynamoDB será provisionada e configurada automaticamente. Você pode visualizar a própria tabela no console do Amplify:
Mas se você quiser fazer alterações no esquema, precisará fazer isso através do console. A configuração de back-end do Amplify é armazenada em:
projeto / amplificação / back-end /
com a configuração da API sendo armazenada em api / amplify. Se você fizer alterações e executar o comando amplify novamente, ele fará modificações na pilha do CloudFormation.
Para usar sua API, você pode importar o PubSub do Amplify e configurá-lo para usar a configuração que o Amplify colocou em src / aws-imports. js
API de importação
, {graphqlOperation} de '@ aws-amplify / api'; importar PubSub de '@ aws-amplify / pubsub'; importe o awsconfig de './aws-exports'; // Configure o Amplify API. configure (awsconfig); PubSub. configure (awsconfig);
Você pode usar o objeto API para fazer conexões. Por exemplo, se você estiver usando o GraphQL, poderá importar os métodos de mutação e chamar um deles usando API. graphql (método):
import {createTodo} de './graphql/mutations'; função assíncrona createNewTodo () {const todo = {name: "new-item", descrição: "Hello Amplify!" }; aguarde API. graphql (graphqlOperation (createTodo, {input: todo})); }[/PRÉ]Publicando seu aplicativo Amplify
Você está livre para distribuir seu aplicativo Amplify da maneira que achar melhor, mas se estiver publicando um aplicativo Web, o Amplify inclui algumas funções internas para implantar automaticamente seu aplicativo no S3. A opção padrão é para um ambiente de desenvolvimento sem HTTPS, mas também pode ser configurado para usar o CloudFront. Uma alternativa a isso seria configurar um pipeline de implantação S3 automatizado do CodePipeline ou simplesmente hospedá-lo em um servidor Web existente.
Se você deseja implantar no S3, basta adicionar o recurso de hospedagem na Web a partir da CLI:
amplificar adicionar hospedagemIsso perguntará se você está implantando no dev ou prod, e solicitará o índice e os documentos de erro do seu site. Depois que isso estiver configurado, execute a publicação de amplificação para enviar uma nova pilha do CloudFormation.
Seu navegador abrirá o novo ponto de extremidade do seu aplicativo, que você poderá adicionar ao DNS com um registro CNAME ou um alias do bucket do Route 53.
Via: How to Geek
Nenhum comentário