Este é um projeto que conciste na implementação de um formulário de login em React utilizando TypeScript, Styled Components, Yup e React Hook Form, a tipagem estática oferecida pelo TypeScript é integrada para aprimorar a robustez e segurança do código. Ao definir tipos para os estados e props, garantimos uma manipulação mais confiável dos dados. O React Hook Form é empregado para gerenciar o estado do formulário e automatizar a validação dos campos.
A biblioteca Yup é utilizada para definir esquemas de validação, permitindo uma verificação mais detalhada dos dados inseridos. A validação do formulário é então tratada de forma eficiente através da integração do Yup com o React Hook Form, garantindo que apenas dados válidos sejam enviados.
A estilização é realizada com a biblioteca Styled Components, proporcionando uma abordagem elegante e modular para o design do formulário. Quando o formulário não está validado de acordo com os critérios estabelecidos pelo Yup, o botão de login é automaticamente desativado por meio da manipulação dos estados do React Hook Form.
Essa abordagem integrada entre TypeScript, React Hook Form, Yup e Styled Components não apenas reforça a coesão entre estilo e funcionalidade, mas também oferece uma solução completa para a validação eficiente de formulários, garantindo uma experiência de usuário melhorada e a segurança do processo de login.
- 
Valida o formato de e-mail e senha usando Yup e expressões regulares: Verifica se o e-mail está no formato correto e se a senha tem pelo menos 6 caracteres, incluindo pelo menos uma letra e um número. A validação é acionada quando o formulário perde o foco (onBlur) e revalida quando o valor de um campo muda (onChange). 
- 
Desabilita o botão de login até que o formulário seja preenchido corretamente: Isso é determinado pela propriedade isValid do objeto formState retornado pelo hook useForm. 
- 
Simula uma função de login que registra uma mensagem no console: A função handleLogin é chamada quando o botão de login é clicado. Neste exemplo, ela simplesmente registra uma mensagem no console. 
- 
React JS: O framework JavaScript utilizado como base para a construção da aplicação. 
- 
Styled-components: O estilo da aplicação é criado com styled-components para uma experiência visual atraente. 
- 
typescript: O TypeScript é usado para adicionar tipos estáticos à aplicação. Isso ajuda a prevenir erros em tempo de execução, melhora a legibilidade do código e facilita a refatoração e a manutenção do código. 
- Clone este repositório.
- Instale as dependências usando npm install.
- Execute a aplicação com npm start.
- Comece a buscar e explorar repositórios do GitHub!
Apreciamos o seu interesse neste projeto e esperamos que esta aplicação torne sua experiência de busca de repositórios no GitHub mais eficiente e agradável. Se tiver alguma sugestão ou feedback, por favor, compartilhe comigo!
