Francileudo Oliveira
Francileudo Oliveira01/11/2022 10:00
Compartilhe

Consumindo API do github usando o Axios e Nextjs - Parte 1

  • #HTML
  • #CSS
  • #React

Olá, seja muito bem vindo(a), no artigo de hoje nós vamos consumir, de forma simples, a API do Github, com elas iremos construir um card com informações pegas do nosso perfil.

Primeiro vamos criar uma pasta no nosso computador e iniciar nosso projeto com o seguinte comando no terminal:

yarn init -y

Com isso teremos nosso package.json criado automaticamente, depois vamos colocar o seguinte comando no terminal: 

yarn add next react react-dom

Após a instalação das dependências com o comando acima, precisamos de um .gitgnore, podemos construir um automático com npx gitignore node. Por fim, antes de iniciar o desenvolvimento, vamos instalar o Axios no projeto com o comando yarn add axios.

Agora vamos lá, primeiro vamos criar uma pasta chamada “pages” e adicionar um arquivo index.js dentro dele. Agora precisamos testar se o nosso projeto está funcionando com um famoso “Hello World”, para isso colocamos o código a seguir no index.js e abrimos uma janela localhost para visualizar a frase.

export default function Home () {
 return (
<h1>Hello World</h1>
 )
}

Com isso temos nosso arquivo principal, o index, funcionando. No código acima o que fizemos foi criar uma função que retorna uma tag h1 com nossa frase, sendo que colocamos uma exportação padrão (export default) para que a função seja importada por padrão quando nosso index.js for “lido”.

Vamos criar uma pasta chamada src, dentro dela adicionar uma pasta chamada services e por fim um arquivo chamado api-github.js dentro desta pasta. Neste arquivo vamos importar o Axios e criar uma constante para colocar o url base da api dentro dele.

import axios from "axios";

const apiGithub = axios.create({
 baseURL: "https://api.github.com",
});

export default apiGithub;

O que precisamos agora é inicialmente criar nosso card, para isso vou usar o código do nosso artigo tutorial anterior: https://francileudo-frontend.blogspot.com/2022/10/construindo-uma-borda-gradiente-em-um.html. Primeiro colocaremos o código html do card dentro da tag <></> no return do index.js, dessa forma:

export default function Home () {
 return (
<>
 <div className="card-after">
  <div className="card">

  </div>
 </div>
</>
 )
}

Agora, antes de codificar o conteúdo dentro do card, vamos pegar o css do card e adicionar abaixo da div externa dentro da tag <style jsx></style>, podemos usar essa tag no Nextjs para colocar css dentro do javascript, não surte pq tudo está em um arquivo só (html, css e javascript), rsrs.

export default function Home () {
 return (
<>
 <div className="card-after">
  <div className="card">

  </div>
 </div>

 <style jsx>{`
  * {
   padding: 0;
   margin: 0;
   box-sizing: border-box;
  }
  .card-after {
   background: linear-gradient(to left, #2bf791 0%, #53b0ea 100%);
   width: 190px;
   height: 254px;
   padding: 5px;
   border-radius: 1rem;
  }
  .card {
   background: #000;
   width: 180px;
   height: 244px;
   padding: 10px;
   border-radius: 1rem;
  }
 `}</style>
</>
 )
}

Como o artigo está ficando longo, irei parar por aqui e realizar o consumo no próximo artigo, como atividade deixo para você a construção de um html e css para receber os dados da api do github, que serão: a imagem de perfil, nome, nickname e bio. Deixo um abraço e até o próximo artigo.

Artigo Original: https://francileudo-frontend.blogspot.com/2022/11/consumindo-api-do-github-usando-o-axios.html

Compartilhe
Comentários (0)