- Instalação do node e yarn
- Instalação de uma IDE caso não tiver
- Instalação do React
npm create react-app primeiro-projeto-react --template=typescript
cd primeiro-projeto-react
yarn start
-
Crie os componentes do nosso projeto: Profile e Repository
-
Instalar o react-route-dom para a configuração das rotas do projeto
yarn add react-router-dom -D
criar a pasta routes
yarn add @types/react-router-dom
- Crie as duas rotas da nossa aplicação
import React from "react";
import { Route, Switch } from "react-router-dom";
import Profile from "../pages/profile";
import Repository from "../pages/repository";
const Routes: React.FC = () => (
<Switch>
<Route path="/" exact component={Profile} />;
<Route path="/repository" component={Repository} />;
</Switch>
);
export default Routes;
- Organizar o App.tsx
import React from "react";
import Routes from "./routes";
import { BrowserRouter } from "react-router-dom";
const App: React.FC = () => (
<BrowserRouter>
<Routes />
</BrowserRouter>
);
export default App;
yarn add styled-components -D
yarn add react-icons -D
- Criar as páginas da aplicação
- Criar o useEffect
interface Repository {
full_name: string;
description: string;
html_url: string;
stargazers_count: number;
forks_count: number;
open_issues_count: number;
}
const Repository: React.FC = () => {
const [repositories, setRepositories] = useState<Repository[]>([]);
useEffect(() => {
api.get(`/users/bahcasac/repos`).then((response) => {
setRepositories(response.data);
});
}, []);
}