Este projeto é um sistema de gerenciamento de usuários, com cadastro, autenticação, validação de senhas e listagem de usuários. Apenas usuários logados podem visualizar suas próprias informações e somente administradores podem visualizar informações de todos os usuários. Além disso, usuários podem alterar suas senhas na tela de login caso esqueçam.
- ExpressJS
- React,
- React Router DOM,
- Redux,
- Styled components,
- Node.js,
- MySql,
- Sequelize,
- Nodemon,
- Json Web Token,
- BCRYPT,
- CORS,
- YUP,
- React-Toastify
- Cadastro de usuários
- Autenticação de usuários
- Criptografia de senha
- Validação de dados de cadastro
- Gerenciamento de usuários
- Listagem de usuários
- Exclusão de usuários (ADMIN)
- Alteração de senhas
Antes de começar, você precisará das seguintes ferramentas:
# Clone este repositório
$ git clone <https://github.com/victorserpa/Registration.git>
# Acesse a pasta do backend
$ cd backend
# Instale as dependências
$ npm install
# Inicie a aplicação
$ npm run app
### Iniciando o Front End
# Retorne para a pasta front-end
$ cd -
# Acesse a pasta do frontend
$ cd frontend
# Instale as dependências
$ npm install
# Inicie a aplicação
$ npm run dev
-
Instale o MySQL (versão 8 ou mais recente) como SERVER ONLY, selecionando o tipo de configuração como "Development Machine". Mantenha a porta padrão 3306 e forneça a senha "1234". Finalize a instalação.
-
Se você estiver usando o Windows, vá até o diretório C > Arquivos de Programas > MySQL > BIN e copie a URL da pasta. Em seguida, clique com o botão direito do mouse no Meu Computador, vá em Propriedades, Configurações Avançadas do Sistema e adicione a URL copiada às variáveis de ambiente PATH.
-
Abra o Prompt de Comando ou outro programa similar e digite
mysql -h localhost -u root -p
, pressionando enter. Será solicitada a senha "1234". Após inserir a senha, você estará dentro do MySQL.
Recomendamos executar o comando create database cadastrodeusuarios
para criar a tabela de cadastro de usuários e evitar alterações no back-end.
- # Acesse a pasta do backend
$ cd backend
# Execute as migrations
$ npx sequelize-cli db:migrate
// Para criar a tabela "users" dentro do banco "cadastrodeusuarios". E em seguida.
# Execute o seed
$ npx sequelize db:seed:all
// Para já adicionar o usuário ADMIN na tabela.
- Agora você já pode realizar o cadastro de usuários e fazer as operações de gerenciamento de usuários através da aplicação.
- Certifique-se de que o serviço do MySQL esteja iniciado antes de iniciar a aplicação.
- Caso necessite, altere as configurações de segurança do MySQL para permitir a conexão local.
- Não esqueça de configurar as variaveis de ambiente necessárias.
- Lembre-se que o usuário pode se cadastrar, porém ao fazer login, somente poderá visualizar as informações dele mesmo. Para visualizar todos os usuários cadastrados, é necessário ser admin.
- É possível para o usuário alterar sua senha através da tela de login
Feito com ♥ by Victor Schmücker 👋