Skip to content

RocketNotes Backend é uma API completa criada com Node.js e Express, SQLite e Knex.js, com autenticação JWT, middlewares e testes automatizados.

Notifications You must be signed in to change notification settings

nicolasjandre/rocketnotes-backend

Repository files navigation

RocketNotes Backend

Este é o repositório do Backend da aplicação RocketNotes, uma API completa criada utilizando Node.js e Express, com um banco de dados SQLite, manipulado através do Query Builder Knex.js e ferramenta Beekeper Studio.


Estrutura do Banco de Dados

O banco de dados da aplicação possui quatro tabelas: users, notes, tags e links. A tabela usuários contém informações de login dos usuários, como nome, e-mail e senha. A tabela notas contém informações sobre as notas criadas pelos usuários, como título, conteúdo e data de criação. A tabela etiquetas contém informações sobre as etiquetas criadas pelos usuários e a tabela notas_etiquetas contém a relação entre as notas e as etiquetas.


Como Usar

Para utilizar a aplicação, basta executar os seguintes comandos:

npm i
npm run migrate
npm run dev

O servidor estará disponível em http://localhost:3000.


Ferramentas Utilizadas

A aplicação utiliza as seguintes ferramentas:

  • Node.js e Express: plataforma e framework utilizados para a construção do servidor da aplicação.
  • SQLite e Knex.js: banco de dados e Query Builder utilizados para a manipulação do banco de dados da aplicação.
  • Autenticação e JWT: autenticação de usuários implementada através de tokens JWT (JSON Web Token).
  • Middlewares: funções utilizadas para manipular as requisições e respostas do servidor.
  • Upload de imagens: implementado upload de imagens para as notas criadas pelos usuários.
  • API Restful: a API segue os princípios de uma API RESTful.
  • Cors: módulo utilizado para habilitar o CORS (Cross-Origin Resource Sharing).
  • PM2: gerenciador de processos utilizado para manter o servidor da aplicação em execução.
  • Deploy e utilização do render: aplicação hospedada em algum servidor que possua renderização.
  • Variáveis de ambiente: variáveis de ambiente utilizadas para armazenar informações sensíveis, como chaves secretas de autenticação.
  • Testes automatizados e Jest: implementado testes automatizados utilizando o framework Jest.

Este projeto serve como um bom exemplo de como criar uma aplicação backend utilizando Node.js e Express, manipulando um banco de dados utilizando SQLite e Knex.js e implementando funcionalidades de autenticação e upload de imagens.

About

RocketNotes Backend é uma API completa criada com Node.js e Express, SQLite e Knex.js, com autenticação JWT, middlewares e testes automatizados.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published