An open API service indexing awesome lists of open source software.

https://github.com/cassiofb-dev/nlw5-nodejs

LiveChat via WebSocket made with Node.js
https://github.com/cassiofb-dev/nlw5-nodejs

backend livechat nlw-5 nodejs websocket

Last synced: 8 months ago
JSON representation

LiveChat via WebSocket made with Node.js

Awesome Lists containing this project

README

          


WebSocket Chat

Live Chat via WebSocket feito com Node.js.


Funcionalidades
Como usar
Créditos
License

![screenshot](https://i.imgur.com/XcsG3JC.gif)

## Funcionalidades

* Live Chat - Envie uma mensagem, receba a mensagem
- Visualização instantânea da mensagem tanto pelo lado do cliente quanto servidor.
* Banco de Dados
- Mensagens, usuários e conexões são devidamente registrados e gerenciados em suas tabelas no banco de dados.
* Múltiplo atendimento de clientes
* Configurável
- Cliente pode optar por emitir essa funcionalidade caso desejado.
* Protocolos HTTP e WebSocket
- Mensagens são enviadas pelo protocolo ws e as demais requisições são gerenciadas pelo protocolo HTTP
* ORM
- TypeORM utilizada para a conexão com banco de dados.
* TypeScript
- Facilidade na manuntenção e debug do código.

## Como usar

Para clonar e rodar essa aplicação, você irá precisar [Git](https://git-scm.com), [Node.js](https://nodejs.org/en/download/) e [Yarn](https://yarnpkg.com/). Pelo seu terminal:

```bash
# Clone o repositório
git clone https://github.com/cassiofb-dev/nlw5-nodejs

# Entre no repositório
cd nlw5-nodejs

# Instale as dependências
yarn install

# Rode a aplicação
yarn dev
```

## Créditos

websokcet-chat

Agradeço a [RocketSeat](https://rocketseat.com.br/) pela oportunidade de aprendizado e experiência incríveis.

Essa aplicação utiliza os seguintes projetos de código aberto:

- [Node.js](https://nodejs.org/)
- [reflect-metadata](https://github.com/rbuckton/reflect-metadata)
- [TypeScript](https://github.com/microsoft/TypeScript)
- [Express](https://github.com/expressjs/express)
- [CORS](https://github.com/expressjs/cors)
- [Socket.IO](https://github.com/socketio/socket.io)
- [TypeORM](https://github.com/typeorm/typeorm)
- [sqlite3](https://github.com/mapbox/node-sqlite3)
- [uuid](https://github.com/uuidjs/uuid)
- [ts-node-dev](https://github.com/wclr/ts-node-dev)

Inspiração do README [electron-markdownify](https://github.com/amitmerchant1990/electron-markdownify).

## License

MIT

---

> [Acesse meu site](https://cassiofernando.netlify.app/)  · 
> GitHub [@cassiofb-dev](https://github.com/cassiofb-dev)  · 
> Twitter [@cassiofb-dev](https://twitter.com/cassiofb_dev)