Configuração do Storybook para Documentação de Componentes React

Tutorial completo sobre como configurar o Storybook para documentação de componentes em React.

Introdução ao Storybook

O Storybook é uma ferramenta poderosa para desenvolver componentes de maneira isolada, permitindo que você crie, teste e documente seus componentes React de forma eficaz. Neste tutorial, vamos explorar como configurar o Storybook em seu projeto React.

Instalação do Storybook

Para começar, primeiro você precisa instalar o Storybook em seu projeto. No terminal, navegue até o diretório do seu projeto e execute o seguinte comando:

npx sb init

Esse comando irá instalar o Storybook e criar uma estrutura de pastas adequada no seu projeto. Após a instalação, você verá uma nova pasta chamada .storybook e uma pasta stories onde você pode adicionar seus componentes.

Estrutura de Pastas

Após a instalação, a estrutura de pastas do seu projeto deverá ficar assim:

my-project/
├── .storybook/
│   ├── main.js
│   └── preview.js
├── src/
│   └── components/
│       └── MyComponent.js
└── stories/
    └── MyComponent.stories.js

A pasta .storybook contém os arquivos de configuração do Storybook, enquanto a pasta stories é o local onde você irá colocar as histórias dos seus componentes.

Criando Histórias

Agora, vamos criar uma história para o nosso componente. Suponha que você tenha um componente chamado MyComponent. Crie um arquivo chamado MyComponent.stories.js na pasta stories com o seguinte conteúdo:

import React from 'react';
import MyComponent from '../src/components/MyComponent';

export default {
  title: 'Exemplo/MyComponent',
  component: MyComponent,
};

const Template = (args) => <MyComponent {...args} />;

export const Default = Template.bind({});
Default.args = {
  // Defina as props padrão do seu componente aqui
  title: 'Título padrão',
};

Esse código cria uma história padrão para o seu componente. A história é uma função que retorna o seu componente com as props que você deseja testar. No exemplo acima, a história Default renderiza o MyComponent com um título padrão.

Executando o Storybook

Para visualizar suas histórias, execute o seguinte comando no terminal:

npm run storybook

Isso abrirá o Storybook em seu navegador, onde você poderá ver e interagir com suas histórias. Você pode testar diferentes estados do seu componente e verificar como ele se comporta com diferentes props.

Adicionando Estilos

Uma das grandes vantagens do Storybook é a capacidade de testar seu componente em diferentes estilos. Para adicionar estilos, você pode importar arquivos CSS diretamente no seu componente ou usar bibliotecas como o Styled Components. Aqui está um exemplo de como usar o Styled Components:

import styled from 'styled-components';

const StyledButton = styled.button`
  background-color: blue;
  color: white;
  padding: 10px;
  border: none;
  border-radius: 5px;
`;

const MyComponent = ({ title }) => <StyledButton>{title}</StyledButton>;

No exemplo acima, criamos um botão estilizado usando o Styled Components. Essa abordagem permite que você mantenha seus estilos encapsulados junto com seus componentes.

Integração com Testes

Uma boa prática ao usar o Storybook é integrá-lo com ferramentas de teste como Jest e Testing Library. Você pode escrever testes para suas histórias para garantir que seus componentes se comportem como esperado. Aqui está um exemplo de teste:

import { render, screen } from '@testing-library/react';
import MyComponent from '../src/components/MyComponent';

test('renders the title', () => {
  render(<MyComponent title="Test Title" />);
  const linkElement = screen.getByText(/Test Title/i);
  expect(linkElement).toBeInTheDocument();
});

Esse teste verifica se o título passado como prop está sendo renderizado corretamente no componente.

Conclusão

O Storybook é uma ferramenta indispensável para o desenvolvimento de componentes React. Com ele, você pode documentar, testar e visualizar seus componentes de maneira isolada, tornando o processo de desenvolvimento muito mais eficiente. Ao seguir este tutorial, você aprendeu como configurar o Storybook, criar histórias e integrar estilos e testes. Agora, você está pronto para documentar seus componentes de forma eficaz e contribuir para um desenvolvimento de software de alta qualidade.

O Storybook é uma ferramenta que tem ganhado destaque na comunidade de desenvolvedores React. Sua principal função é permitir a construção de componentes isolados, promovendo uma melhor organização e testabilidade. Ao usar o Storybook, as equipes podem trabalhar em paralelo, criando e documentando componentes que podem ser reutilizados em diferentes partes de um aplicativo. Essa abordagem não só melhora a qualidade do código, mas também proporciona uma documentação visual que facilita a colaboração entre desenvolvedores e designers.

Algumas aplicações:

  • Documentação de componentes de UI
  • Testes visuais de componentes
  • Desenvolvimento paralelo de componentes

Dicas para quem está começando

  • Comece com componentes simples e vá aumentando a complexidade.
  • Utilize as histórias para visualizar diferentes estados do componente.
  • Explore addons do Storybook para aumentar a funcionalidade.
  • Mantenha a documentação sempre atualizada.

Contribuições de Gabriel Nogueira

Compartilhe este tutorial: Como configurar Storybook para documentar componentes React?

Compartilhe este tutorial

Continue aprendendo:

Como fazer animações de entrada e saída de elementos no React?

Tutorial completo sobre animações de entrada e saída de elementos no React.

Tutorial anterior

Como usar Plop.js para automatizar a criação de componentes no React?

Entenda como o Plop.js pode agilizar a criação de componentes em projetos React.

Próximo tutorial