Projeto | Tecnologias | Experiências adquiridas | Clonar | Licença
O aplicativo foi criado durante a Semana JS Expert 03! Gerenciada pelo @Erick Wendel.
Seu objetivo é conectar pessoas através do terminal - independente de seu sistema operacional - para colocar o papo em dia. A conexão é feita através de WebSockets construídos sem usar bibliotecas externas.
Esse projeto foi desenvolvido utilizando as seguintes tecnologias:
-
blessed Para construção da interface do terminal com uma linguagem semelhante ao CSS.
-
uuid Para geração de ids únicos na conexão TCP/IP WebSocket.
Só isso. pouco, não? 🤣
O projeto foi visado em usar a menor quantidade de bibliotecas externas possíveis! Portanto, foi construído do zero uma aplicação de conexão/troca de informações contantes. Com isso em mente, foi possível entender à fundo o processo de upgrade de um protocolo HTTP/HTTPS para um protocolo WebSocket através da Handshake entre o servidor e o cliente! Também foi possível adquirir mais experiência em questão de processo de eventos, como um Event Emitter, presente em bibliotecas de WebSockets famosas, como socket.io.
Para clonar para seu repositório local use o seguinte comando no seu terminal de preferência:
# é necessário ter o git instalado em seu sistema operacional.
# clonando
git clone https://github.com/jsGolden/hacker-chat
cd hacker-chat
# instalando dependências do cliente/servidor
cd client && npm i && cd ..
cd server && npm i && cd ..
# rodando projeto
cd client
# rodando a aplicação com o servidor hospedado na Heroku
node index.js --username Fulano --room Sala01
# rodando a aplicação com um servidor local
node index.js --username Fulano --room Sala01 --hostUri http://localhost:9898
Este projeto está sobre a licença MIT.
Desenvolvido com 💜 por Wagner Rodrigues