Skip to content

marinaisabels/labook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt textLabenu Web Full-Stack Bootcamp

Desenvolvimento de aplicações completas, incluindo frontend Web com React e backend com node.js.


Projeto Backend desenvolvido por Marina Isabel, Rosana Rezende e Thales Milanezi


Projeto Labook

O LaBook será uma rede social com o objetivo de promover a conexão e interação entre seus mais diversos usuários. Os usuários podem criar posts de dois tipos ("evento" ou "normal), comentá-los e curti-los também. O desenvolvedor do frontend acha que é bastante experiente; dessa forma, já preparou uma lista de todos os endpoints que serão necessários para o projeto:

    1. Cadastrar
    1. Logar
    1. Fazer amizade
    1. Desfazer Amizade
    1. Criar post
    1. Ver todo o Feed
    1. Ver apenas um tipo de post do Feed

Desafios:

    1. Curtir Post Essa requisição deve receber somente o id do post e retornar uma mensagem de sucesso ou erro. Lembre-se de que um usuário não pode curtir o mesmo post duas vezes.
    1. Descurtir Post Essa requisição deve receber somente o id do post e retornar uma mensagem de sucesso ou erro. Lembre-se de que um usuário não pode descurtir um post que não tenha curtido
    1. Comentar Post Recebendo o id do post e mensagem do comentário, o endpoint deve funcionar sem problemas. Um usuário pode, se quiser, comentar mais de uma vez o mesmo post.
    1. Implemente a funcionalidade que permita que o token de autenticação seja atualizado Também conhecido como "Refresh Token", você deve implementar um endpoint que permita que o Frontend autalize o "acess token", caso este expire

Começando

Para executar o projeto, será necessário instalar os seguintes programas:

Desenvolvimento

Para iniciar o desenvolvimento, é necessário clonar o projeto do GitHub num diretório de sua preferência:

cd "Pasta do arquivo" git clone https://github.com/marinaisabels/backend-project.git

Configuração

Para configurar o arquivo, é preciso instalar as depêndencias

  • Node e Typesript npm init npm install typscript @types/node ts-node-dev
  • Banco de dados npm install knex mysql @types/knex dotenv
  • Express npm install express@4.17.0 @types/express@4.17.0
  • UUID npm install uuid @types/uuid
  • JWT npm install jsonwebtoken @types/jsonwebtoken

Instruções para rodar

As instruções são:

  • npm install para instalar todas as dependências;
  • npm run start para rodar localmente o projeto
  • npm run build para gerar uma versão possível de ser deployada com os arquivos transpilados para Javascript

Esse é um projeto de Backend feito utilizando NodeJS, Express, Typescript e MySQL. Além disso, ele segue uma arquitetura baseada em MVC, com 3 camadas simples:

  • Controller: responsável pela comunicação com agentes externos (como o Frontend)
  • Model: responsável pela representação das nossas entidades
  • Business: responsável pela lógica de negócio

About

Projeto Labook - Labenu

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •