{"id":19844776,"url":"https://github.com/lucasrmagalhaes/nlw5-nodejs","last_synced_at":"2026-04-14T05:31:13.893Z","repository":{"id":42656705,"uuid":"359633248","full_name":"lucasrmagalhaes/nlw5-nodejs","owner":"lucasrmagalhaes","description":"Atendimento ao Cliente em Node.js. Quinto evento da NLW - Rocketseat.","archived":false,"fork":false,"pushed_at":"2022-12-14T03:11:03.000Z","size":630,"stargazers_count":3,"open_issues_count":8,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-19T07:29:50.898Z","etag":null,"topics":["beekeeper","dayjs","express","insomnia","migrations","mustache-js","nlw-5","nodejs","rocketseat","sqlite","typeorm","typescript","uuid","websocket","yarn"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lucasrmagalhaes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-20T00:13:29.000Z","updated_at":"2024-08-26T01:57:18.000Z","dependencies_parsed_at":"2023-01-28T16:31:11.686Z","dependency_job_id":null,"html_url":"https://github.com/lucasrmagalhaes/nlw5-nodejs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lucasrmagalhaes/nlw5-nodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasrmagalhaes%2Fnlw5-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasrmagalhaes%2Fnlw5-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasrmagalhaes%2Fnlw5-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasrmagalhaes%2Fnlw5-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lucasrmagalhaes","download_url":"https://codeload.github.com/lucasrmagalhaes/nlw5-nodejs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasrmagalhaes%2Fnlw5-nodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31784251,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["beekeeper","dayjs","express","insomnia","migrations","mustache-js","nlw-5","nodejs","rocketseat","sqlite","typeorm","typescript","uuid","websocket","yarn"],"created_at":"2024-11-12T13:05:30.443Z","updated_at":"2026-04-14T05:31:13.877Z","avatar_url":"https://github.com/lucasrmagalhaes.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eNLW#5 - Atendimento ao Cliente :white_check_mark:\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/public/images/Cliente.jpg\" target=\"_blank\"\u003e\n    \u003cimg \n         src=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/public/images/Cliente.jpg\" \n         alt=\"Cliente\" \n    /\u003e\n  \u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cb\u003e\u003ci\u003eCliente\u003c/b\u003e\u003c/i\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/public/images/Atendente.jpg\" target=\"_blank\"\u003e\n    \u003cimg \n         src=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/public/images/Atendente.jpg\" \n         alt=\"Atendente\" \n    /\u003e\n  \u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cb\u003e\u003ci\u003eAtendente\u003c/b\u003e\u003c/i\u003e\n\u003c/p\u003e\n\n\u003chr /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eDia 1 - Fundamentos do NodeJS\u003c/strong\u003e\u003c/summary\u003e\n  \u003cbr /\u003e\n  \n  - [x]  Boas Vindas ao NLW05\n  - [x]  Overview da trilha de NodeJS\n  - [x]  O que faremos nessa aula?\n  - [x]  Minha apresentação\n  - [x]  Dicas para ir até o fim do projeto\n    - [x]  Fazer parte da comunidade\n    - [x]  Tirar dúvidas\n    - [x]  Se conectar com outros devs\n    - [x]  Se apresentar no #network\n    - [x]  Desafios com prêmios exclusiivos\n        - [x]  Um código por aula\n        - [x]  Pra participar, basta ir até o fim, com foco, ficar atento aos e-mails e na nossa comunidade\n  - [x]  Apresentação do Projeto\n  - [x]  Conteúdo técnico\n  - [x]  Configuração de ambiente\n  - [x]  O que é NodeJS?\n  - [x]  O que é uma API?\n  - [x]  Por que usar Typescript?\n  - [x]  Criar o projeto com NodeJS\n    - [x]  Criar primeira rota\n    - [x]  Conhecer os tipos de métodos\n    - [x]  Criar rota POST\n    - [x]  Configurar o insomnia\n    - [x]  Recap da aula de hoje\n    - [x]  O que veremos amanhã\n\n\u003c/details\u003e\n\n\u003chr /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eDia 2 - Iniciando com o Banco de Dados\u003c/strong\u003e\u003c/summary\u003e\n  \u003cbr /\u003e\n  \n- [x]  O que aprendemos ontem\n- [x]  O que veremos hoje\n- [x]  Quais são as formas de trabalhar com Banco de Dados\n- [x]  Configurando o typeorm\n- [x]  O que são migrations\n- [x]  Criando as migrations\n- [x]  Criando as entidades\n- [x]  Criando os repositórios\n- [x]  Criando a rota das configurações\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/bd.png\" target=\"_blank\"\u003e\n    \u003cimg \n         src=\"https://github.com/lucasrmagalhaes/nlw5-nodejs/blob/main/nlw5/bd.png\" \n         alt=\"Banco de Dados\" \n    /\u003e\n  \u003c/a\u003e\n  \u003cbr /\u003e\n  \u003ci\u003eBanco de Dados\u003c/i\u003e\n\u003c/p\u003e\n\u003c/details\u003e\n\n\u003chr /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eDia 3 - Continuando a Aplicação\u003c/strong\u003e\u003c/summary\u003e\n  \u003cbr /\u003e\n  \n- [x]  Separar a regra de negócio de settings\n- [x]  Criar estrutura de user\n- [x]  Criar estrutura de messages\n    - [x]  Relacionamento Many To One\n\n\u003c/details\u003e\n\n\u003chr /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eDia 4 - Trabalhando com Websocket\u003c/strong\u003e\u003c/summary\u003e\n  \u003cbr /\u003e\n  \n- [x]  O que é Websocket?\n- [x]  Instalando as dependências na aplicação\n- [x]  Configurando websocket\n- [x]  Criar estrutura de connections\n- [x]  Configurando página Atendente HTML\n\n\u003c/details\u003e\n\n\u003chr /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eDia 5 - Finalizando o Projeto\u003c/strong\u003e\u003c/summary\u003e\n  \u003cbr /\u003e\n  \n- [x]  Concluir página de atendimento\n- [x]  Criar os eventos para atendimento\n- [x]  Concluir página de cliente\n- [x]  Criar evento para cliente\n- [x]  Adicionar admin a conexão\n- [x]  Encerramento\n\n\u003c/details\u003e\n\n\u003chr /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucasrmagalhaes%2Fnlw5-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucasrmagalhaes%2Fnlw5-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucasrmagalhaes%2Fnlw5-nodejs/lists"}