# React > [!NOTE] React > React é uma biblioteca para [[JavaScript]]. As duas principais características do [[React]] são a capacidade de trabalhar com componentes (partes de código reutilizáveis) e também a possibilidade de gerenciar estados de apresentação (mudanças que podem acontecer na página web). **:: Referência ::** [Site Oficial do React](https://reactjs.org/) # Notas ## Características - **Declarativo:** Você descreve como deseja que sua interface seja em diferentes estados, e o React é responsável por atualizar eficientemente a interface quando os dados mudam. - **Baseado em componentes:** Crie UIs modulares e reutilizáveis dividindo-as em componentes independentes. - **[[JSX]]:** Use uma sintaxe semelhante a [[Linguagem de Marcação de Hipertexto|HTML]] dentro do [[JavaScript]] para descrever a estrutura da sua [[Interface de usuário|UI]]. - **[[Document Object Model|DOM]] Virtual:** Manipula mudanças na [[Interface de usuário|UI]] eficientemente usando uma representação virtual da interface real. - **Fluxo de Dados Unidirecional:** Os dados fluem em uma única direção, facilitando o rastreamento de mudanças e a depuração. ## Conceitos do React - [[Iniciando um projeto no React]] - [[Componentes no React]] - [[Componentes de função no React]] - [[Componentes de classe no React]] - [[Importar e exportar componentes no React]] - [[Composição de componente no React]] - [[Hooks no React]] - [[Hooks de estado no React]] - [[Hooks de efeito no React]] - [[React router]] ## Exemplos no React - [[Cronometro simples no React]] - [[Exemplo de uso do React Router]]