Não preciso do projeto finalizado, quero apenas a construção do projeto funcional, não precisa ter layout bonito, não precisa nem ter layout desde que tenha o básico, segue o detalhamento:
Requisitos:
- Projeto NodeJS único ou seja Frontend + Backend num único projeto apenas separados por pastas.
- O frontend pode ser escrito em HTML5, CSS3 e Javascript puros ou em ReactJS.
- O frontend não precisa ter o layout bonito, precisa apenas ter o código bem escrito e bem organizado de fácil entendimento, com o máximo de comentários possíveis.
- O backend deve ser escrito em Javascript ou Typescript usando NodeJS, recomendo o uso das bibliotecas "express" e "
socket.io" além do protocolo webRTC que é o principal para que seja possível realizar a construção de salas de conversa com vídeo chamada entre 2 e até no máximo 6 pessoas.
Detalhamento:
- Eu como usuário acesso a URL inicial do sistema "http://localhost:3000/"
- Então é exibido na tela os seguintes campos: "Nome (Digitação), Perfil (Escolha: Gerente, Coordenador, Analista, Time, Stakeholder) e Sala (Sala 1, Sala 2, Sala 3)"
- Preencho os dois campos e clico no botão "iniciar chamada".
- Então caso não exista uma vídeo chamada para a Sala selecionada, é criada uma sala e sou adicionado na mesma e fico aguardando os próximos a entrar na mesma sala.
- Caso já exista a sala eu sou apenas adicionado a ela.
- Apenas o perfil "Gerente" pode encerrar a chamada (Fechar a Sala).
- Qualquer outro perfil pode sair da sala, mas sala continua ativa, até que o "Gerente" saia ou encerre a mesma fazendo com que todos sejam desconectados.
- Qualquer um pode escrever no chat, e as mensagens são exibidas a todos que estão na sala.
Basicamente é isso, o que mais preciso que seja feito é que o código backend seja muito bem organizado em funções cada uma com sua responsabilidade e o nome das funções devem deixar muito claro o que cada função realizada, bem como deve haver um comentário para cada função ou trecho importante do código explicando o que aquele trecho de código realiza ou representa, para que fique claro o entendimento de quando cada código é acionado.
Pode usar este vídeo aqui como base para criação:
https://www.youtube.com/watch?v=nu7vew-zypY&t=315s
Contexto Geral do Projeto
A ideia é fazer um site de videochamada simples usando o protocolo webRTC, veja esse video: https://www.youtube.com/watch?v=nu7vew-zypY&t=315s
Prazo de Entrega: Não estabelecido