Skip to content

O Menu é uma API com CRUD para gerenciar um cardápio online. Isso foi feito utilizando o banco de dados MongoDB através do framework do Mongoose e JWT para autenticação do usuário.

Notifications You must be signed in to change notification settings

WilliansonDantas/Project-Menu

Repository files navigation

Menu

O Menu é uma API com CRUD para gerenciar um cardápio online. Isso foi feito utilizando o banco de dados MongoDB através do framework do Mongoose e JWT para autenticação do usuário.


Motivo da escolha das ferramentas:

  • Typescript principalmente por seu recurso de tipagem, o que auxilia na redução de erros;
  • NodeJS por ser versátil e por permitir escrever aplicativos em JavaScript;
  • Express por ser um framework de aplicativos web para NodeJS e desenvolvimento de aplicativos web;
  • MongoDB por ser um dos bancos de dados não relacionais amplamente utilizado em aplicativos web;
  • Mongoose por fornecer uma interface orientada a objetos para trabalhar com o MongoDB;
  • JWT: JSON Web Tokens por permitir criar um sistema seguro de autenticação;

Além dos fatos mencionados anteriormente, a escolha se deu pela solicitação do projeto e por serem ferramentas que possuo conhecimento prévio e utilizei na construção de outros projetos similares a este, exemplo:


Instalação:

Para instalar este projeto, é necessário ter o Node.js e o MongoDB instalados em seu sistema.

Clone este repositório:

git clone [email protected]:WilliansonDantas/Project-Menu.git

Navegue até o diretório do projeto:

cd Project-Menu

Instale as dependências:

npm install

Crie um arquivo .env, utilizando as informações contidas no arquivo:

.env-example


Docker:

Rode o serviço db com o comando docker-compose up -d.

  • Lembre-se de parar o mongo se estiver usando localmente na porta padrão (27017);
  • Esse serviço irá inicializar um container chamado menu_db.

Uso:

Para iniciar o servidor, execute o seguinte comando:

npm run dev

Isso iniciará o servidor em:

http://localhost:3001


Dependências:

  • Express: um framework de aplicativo da web minimalista e flexível para Node.js;
  • Jsonwebtoken: uma implementação de token JSON Web para Node.js;
  • Mongoose: uma ferramenta de modelagem de objetos MongoDB projetada para funcionar em um ambiente assíncrono.

Dependências de desenvolvimento:

  • @types/express: definições TypeScript para o Express;
  • @types/jsonwebtoken: definições TypeScript para o Jsonwebtoken;
  • @types/mongoose: definições TypeScript para o Mongoose;
  • dotenv: um módulo sem dependência que carrega variáveis de ambiente de um arquivo .env para process.env;
  • ts-node: um mecanismo de execução e REPL TypeScript para Node.js;
  • ts-node-dev: uma ferramenta de desenvolvimento que executa um script TypeScript e o reinicia em caso de alterações de arquivos;
  • TypeScript: um superset do JavaScript que adiciona tipagem estática opcional à linguagem.

Ferramentas & Metodologias Utilizadas:

About

O Menu é uma API com CRUD para gerenciar um cardápio online. Isso foi feito utilizando o banco de dados MongoDB através do framework do Mongoose e JWT para autenticação do usuário.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published