Skip to content

Criação de uma API RESTful com Node.js, Docker, SQL, JWT (autenticação de usuários), Express.js e Sequelize para o gerenciamento de um blog e seus posts. Permite CRUD de usuários, categorias e posts do blog, e busca de posts por termos específicos. A API faz a autenticação e autorização dos usuários utilizando o JWT.

Notifications You must be signed in to change notification settings

LuzBernardo/Blogs-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7e41b57 · Mar 30, 2023

History

7 Commits
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023
Mar 30, 2023

Repository files navigation

Blogs API

Este projeto é um exercício prático para aplicar conhecimentos em Node.js, Docker, SQL, JWT (autenticação de usuários), Express.js, Sequelize e APIs RESTful, focado no gerenciamento de blogs. A aplicação permite executar operações de criação, leitura, atualização e exclusão (CRUD) relacionadas a usuários, categorias e posts de blog, além de oferecer a funcionalidade de pesquisa de posts por termos específicos.

Desenvolvida em Node.js, a aplicação utiliza uma API para gerenciar usuários, categorias e posts de blog, bem como endpoints responsáveis pela autenticação e autorização dos usuários. O projeto é ideal para quem busca uma base sólida e moderna para desenvolver aplicações similares ou como referência para aprimorar habilidades técnicas

Funcionalidades

A aplicação conta com as seguintes funcionalidades:

  • Gestão de usuários: cadastro, login, visualização, edição e exclusão de usuários.
  • Gestão de categorias: criação, visualização e associação a posts de blog.
  • Gestão de posts de blog: criação, visualização, edição e exclusão de posts, além de pesquisa por termos.
  • Autenticação e autorização de usuários: validação de tokens de acesso e proteção de rotas que exigem autenticação.

API

A API para o CRUD de usuários, categorias e posts de blog conta com os seguintes endpoints:

  • POST /login - realiza o login do usuário e retorna um token de acesso.
  • POST /user - cria um novo usuário.
  • GET /user - retorna uma lista com todos os usuários cadastrados.
  • GET /user/:id - retorna as informações de um usuário específico, identificado pelo seu ID.
  • DELETE /user/me - exclui o usuário autenticado.
  • POST /categories - cria uma nova categoria.
  • GET /categories - retorna uma lista com todas as categorias cadastradas.
  • POST /post - cria um novo post de blog.
  • GET /post - retorna uma lista com todos os posts de blog cadastrados.
  • GET /post/:id - retorna as informações de um post de blog específico, identificado pelo seu ID.
  • PUT /post/:id - atualiza as informações de um post de blog específico, identificado pelo seu ID.
  • DELETE /post/:id - exclui um post de blog específico, identificado pelo seu ID.
  • GET /post/search?q=:searchTerm - pesquisa posts de blog por termos e retorna os resultados.

Como executar o projeto

Para executar o projeto, siga os seguintes passos:

  1. Clone o repositório para sua máquina local.
  2. Instale as dependências do projeto utilizando o comando npm install.
  3. Execute o comando npm start para iniciar a aplicação.
  4. Utilize as rotas da API para realizar as operações desejadas.

Considerações finais

Este projeto é um exemplo prático e didático, desenvolvido para explorar e consolidar habilidades em Node.js, Docker, SQL, JWT (autenticação de usuários), Express.js, Sequelize, APIs RESTful e gerenciamento de blogs. Convido você a usar este projeto como referência, inspiração ou ponto de partida para o desenvolvimento de suas próprias aplicações. Estou aberto a dúvidas, sugestões ou feedbacks; não hesite em entrar em contato comigo.

About

Criação de uma API RESTful com Node.js, Docker, SQL, JWT (autenticação de usuários), Express.js e Sequelize para o gerenciamento de um blog e seus posts. Permite CRUD de usuários, categorias e posts do blog, e busca de posts por termos específicos. A API faz a autenticação e autorização dos usuários utilizando o JWT.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published