{"id":22511668,"url":"https://github.com/camillamendess/node-websockets","last_synced_at":"2026-04-20T03:01:21.502Z","repository":{"id":241628733,"uuid":"807278900","full_name":"camillamendess/node-websockets","owner":"camillamendess","description":"WebSockets com Node.js - comunicações em tempo real com Socket.IO e MongoDB.","archived":false,"fork":false,"pushed_at":"2024-08-08T13:47:23.000Z","size":139,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T00:46:59.876Z","etag":null,"topics":["mongodb","nodejs","socket-io","websocket"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/camillamendess.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-28T19:50:22.000Z","updated_at":"2024-09-23T19:46:52.000Z","dependencies_parsed_at":"2024-08-07T23:43:54.064Z","dependency_job_id":"d9077147-aaa0-4bf5-8b98-bb9f908c5fd9","html_url":"https://github.com/camillamendess/node-websockets","commit_stats":null,"previous_names":["camillamendess/websockets-project","camillamendess/node-websockets"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/camillamendess/node-websockets","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2Fnode-websockets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2Fnode-websockets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2Fnode-websockets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2Fnode-websockets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/camillamendess","download_url":"https://codeload.github.com/camillamendess/node-websockets/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camillamendess%2Fnode-websockets/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32031070,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mongodb","nodejs","socket-io","websocket"],"created_at":"2024-12-07T02:13:39.712Z","updated_at":"2026-04-20T03:01:21.484Z","avatar_url":"https://github.com/camillamendess.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"### `WebSockets com Node.js - comunicações em tempo real com Socket.IO e MongoDB`\n\n`Socket.IO` é uma biblioteca que facilita o uso de WebSockets em aplicações JavaScript, especialmente em Node.js.\n\n`WebSocket` é um protocolo que permite comunicação bidirecional, o que significa que tanto o cliente quanto o servidor podem enviar mensagens a qualquer momento sem a necessidade de novas requisições HTTP. Isso torna o WebSocket ideal para aplicações em tempo real, como chats, notificações instantâneas, e jogos multiplayer.\n\n### `Aprendizados`\n\n- Implementar o protocolo WebSockets com o Socket.IO e suas possibilidades - Servidor emitir para um ou vários clientes, reconhecimentos, salas do Socket.IO e interação do servidor com diversas páginas.\n- Aplicar conceitos de Front-end e Back-end.\n- Utilizar o driver do Node.js no mongoDB.\n- Aplicar o fluxo de cadastro, login e armazenamento de JWT - Cadastrar senhas criptografadas, autenticar usuários gerando JWT e guardar o JWT nos cookies.\n- Controlar acessos - Utilizar middlewares e namespaces para verificação de autenticidade do cliente.\n- Controlar informações de forma local - Criar uma lista local para controlar as conexões e utilizar socket.data para armazenar informações. \n\n\u003ci\u003e\n  \u003ch4\u003eWebSockets with Node.js - real-time communications with Socket.IO and MongoDB\u003c/h4\u003e\n  Socket.IO is a library that facilitates the use of WebSockets in JavaScript applications, especially in Node.js. WebSocket is a protocol that allows bidirectional communication, which means that both the client and the server can send messages at any time without the need for new HTTP requests. This makes WebSocket ideal for real-time applications such as chats, instant notifications, and multiplayer games.\n\u003c/i\u003e\n\u003ci\u003e\n  \u003ch4\u003eLearnings\u003c/h4\u003e\n  \u003cul\u003e\n    \u003cli\u003eImplement the WebSockets protocol with Socket.IO and its possibilities - Server sends to one or several clients, acknowledgments, Socket.IO rooms and server interaction with several pages.\u003c/li\u003e\n    \u003cli\u003eApply Front-end and Back-end concepts.\u003c/li\u003e\n    \u003cli\u003eUse the Node.js driver in mongoDB.\u003c/li\u003e\n    \u003cli\u003eApply the JWT registration, login and storage flow - Register encrypted passwords, authenticate users by generating JWT and save the JWT in cookies.\u003c/li\u003e\n    \u003cli\u003eControl access - Use middleware and namespaces to verify the client's authenticity.\u003c/li\u003e\n    \u003cli\u003eControl information locally - Create a local list to control connections and use socket.data to store information.\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/i\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamillamendess%2Fnode-websockets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcamillamendess%2Fnode-websockets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamillamendess%2Fnode-websockets/lists"}