ocsoares / Auth-Form-NextJS

Uma aplicação FullStack com formulários seguros para o cadastro, login de usuários e envio de emails, desenvolvida utilizando o framework NextJS 13 e integrando com APIs de um backend próprio.

Home Page:https://auth-form-next-js.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

Auth Form NextJS

🚀 https://auth-form-next-js.vercel.app 🚀
Essa é uma aplicação FullStack com formulários seguros para o cadastro, login de usuários e envio de emails, desenvolvida utilizando o framework NextJS 13 e integrando com APIs de um backend próprio.

NPM

Autor

👤 Cauã Soares

💼 https://www.linkedin.com/in/ocauasoares

APIs desenvolvidas para o projeto

Estrutura do projeto

Estrutura

Esse projeto foi desenvolvido para utilizar formulários seguros para a autenticação de usuários e envio de emails, integrando com APIs robustas e aplicando a segurança com JWT (JSON Web Token).

Middleware

Middleware

Pasta app

Pasta app

Trecho da configuração do Next Auth

Configuração do Next Auth

Cadastro de usuários

Arquivos do cadastro

Código da página de cadastro

Página de cadastro

Login de usuários

Arquivos do login

Código da página de login

Página de login

Envio de emails

Arquivos do envio de email

Código da página de envio de email

Página de envio de email

Principais tecnologias e bibliotecas utilizadas

  • TypeScript
  • NextJS
  • MaterialUI
  • Next Auth
  • Zod
  • React Hook Form
  • Lodash
  • JWT

Características e funcionalidades do projeto:

Estrutural 🛠️

  • Clean Code
  • SOLID
  • Clean Architecture
  • Integração com APIs desenvolvidas especificamente para esse projeto

Funcionalidades 🎯

  • Formulários para cadastro, login de usuários e envio de emails, protegendo e validando a entrada desses formulários com a biblioteca Zod
  • Mostra os erros nos campos do formulário para o usuário
  • Prevenção de ataques Brute Force
  • Opção de login social com contas do Google e do GitHub, utilizando autorização OAuth 2.0
  • Opção de "Lembrar-me" que oferece um JWT com tempo de expiração maior para a sessão do usuário durar mais tempo
  • Autenticação e proteção da rota de enviar email apenas para usuários logados
  • Fornecimento e checagem de JWT para o usuário logado, para todas as opções de login disponível
  • Alertas personalizados

Executar o projeto localmente

Pré-requisitos: Typescript e NodeJS

# clonar o repositório
git clone https://github.com/ocsoares/Auth-Form-NextJS/

# instalar as bibliotecas
npm install

# criar um arquivo .env.local na pasta raiz do projeto

# configurar esse .env.local baseado no arquivo .env.example

# transpilar os arquivos do projeto para .js
npm run build

# executar o projeto
npm start

About

Uma aplicação FullStack com formulários seguros para o cadastro, login de usuários e envio de emails, desenvolvida utilizando o framework NextJS 13 e integrando com APIs de um backend próprio.

https://auth-form-next-js.vercel.app


Languages

Language:TypeScript 99.8%Language:JavaScript 0.2%