Initial-project

Project steps: 1 - Config the initial environment with tests 2 - Create environment cloud with mongodb 3 - Connect API with cloud

  • Install package.json with npm init -y;

  • Install dependencies:

    • npm i express
    • npm i dotenv
    • npm i nodemon* analisar ts-node-dev
    • npm i mongodb
    • npm i mongoose
    • npm i jsonwebtoken
    • npm i bcryptjs
  • Install dev dependencies:

    • npm i typescript -D

    • Executar (para gerar o arquivo tsconfig.json do Typescript) no terminal "tsc --init, ou npm i @tsconfig/node18 ou XX";

    • npm i @types/express -D

    • npm i @types/node -D

    • npm i @types/jsonwebtoken -D

    • npm i @types/bcryptjs -D

    • npm i ts-node-dev -D

    • npm i tsx -D

    • npm i vitest -D

    • npm i ts-prune -D

    • npm i eslint -D

    • Executar (para gerar o arquivo .eslintrc.json do Eslint) no terminal "npm init @eslint/config" e configurar/fazer diversos ajustes;

    • npm i eslint-plugin-import-helpers -D

    • npm i eslint-import-resolver-typescript -D

    • npm i prettier -D

    • npm i eslint-config-prettier -D

    • npm i eslint-plugin-prettier -D

    • Executar (para gerar o arquivo .prettierrc.json do Prettier) no terminal "echo {}> .prettierrc.json" para criar um arquivo e após incluir configurações

    • npx husky-init && npm install criar uma pasta .husky na raiz do projeto, "prepare": "husky install" no script no package.json preciso criar um hook no package.json também (necessário configuração)

    • npm i lint-staged -D

  • Incluir no extends do eslintrc "https://github.com/prettier/eslint-config-prettier#installation"