Code Monkey home page Code Monkey logo

reactjs-nodejs-onlinechat's Introduction

FullStack-Typescript ChatApp

📚 Idealização

  • A aplicação "ChatApp" é uma aplicação fullstack que foi desenvolvida com o propósito de fornecer aos usuários a possibilidade de interagir em um chat online com autenticação, prática e rapidez.

💻 Principais Tecnologias

  • NodeJS + Express + MongoDb + Typescript (BackEnd)
  • React + Typescript (Front-end)

🔮 Dependencias (Front-end)

  • "mui": Biblioteca de componentes / estilização.
  • "axios": faz requisições HTTP.
  • "react-hook-form": gerencia formulários e validação de entrada de dados no React.
  • "react-router-dom": adiciona navegação por rotas em aplicativos React.
  • "react-toastify": exibe notificações de estilo de tostador no React.
  • "zod": valida esquemas para JavaScript.
  • "socket.io-client": Web Sockets que permite interações em tempo real do lado cliente.

🔮 Dependencias (Back-end)

  • "mongoose": ORM para Node.js que oferece uma interface ao banco mongoDB.
  • "socket.io": Web Sockets que permite interações em tempo real.
  • "bcryptjs": biblioteca para criptografia de senhas em JavaScript.
  • "cors": pacote para permitir solicitações de outros domínios no Node.js.
  • "cross-env": define variáveis de ambiente de forma consistente em diferentes sistemas operacionais.
  • "dotenv": carrega variáveis de ambiente de um arquivo ".env" no Node.js.
  • "express": framework para aplicativos da web Node.js que fornece recursos para construir APIs e aplicativos da web.
  • "jsonwebtoken": cria e verifica tokens de autenticação JWT.
  • "reflect-metadata": biblioteca para refletir informações de metadados em tempo de execução do TypeScript.
  • "zod": biblioteca de validação de schema para JavaScript.

🔆 Algumas Funcionalidades

  • Autenticação de Rota.
  • Formulário com validação de campos.
  • Transições suaves e acessibilidade.
  • Feedback pro usuário com toastify.

Como rodar o projeto?

Ao clonar o projeto, você terá duas pastas: server e outra client, siga os passos abaixo:

Obs: Para fins de testes o arquivo .env já foi enviado configurado no .zip, pule a etapa 3.

  1. Abra o terminal e navegue até a pasta do servidor ("server").
  2. Execute o comando "pnpm install ou npm install" para instalar as dependências do servidor.
  3. (.zip pule esse passo) Crie um arquivo .env na raiz do projeto e copie o que está no arquivo .env.example e preencha suas variáveis de ambiente.
  4. Execute o comando "pnpm run dev ou npm run dev" para iniciar o servidor. Certifique-se de que o servidor está rodando antes de continuar para o próximo passo. (Necessário deixar o terminal aberto rodando o servidor).
  5. Abra uma nova instância do terminal e navegue até a pasta do cliente ("client").
  6. Execute o comando "pnpm install ou npm install" para instalar as dependências do cliente.
  7. Após a instalação, execute o comando "pnpm run dev ou npm run dev" para iniciar o cliente.
  8. Aguarde o carregamento da página. O projeto deve estar rodando corretamente agora.

OBS: Certifique-se de manter o servidor rodando em uma instância do terminal e o cliente rodando em outra. Para interromper a execução, pressione "CTRL+C" no terminal correspondente.

📱 Preview

main

main2

Vamos nos conectar?

reactjs-nodejs-onlinechat's People

Contributors

gabriel-malafaia avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.