Skip to content

Boilerplate de aplicação em NodeJS com TypeScript, utilizando PNPM como gerenciador de pacotes e environment.

Notifications You must be signed in to change notification settings

juliorovesta/node-with-typescript

Repository files navigation

App em NodeJS e TypeScript

Rodar o app

  1. Abra um prompt de comando no diretório raiz do projeto

  2.  npm i pnpm -g
  3.  pnpm install
  4. Modos de execução

    • Para executar build apenas

      pnpm build
    • Para executar em modo de desenvolvimento que fica monitorando alterações

      pnpm dev
    • Para executar em modo normal

      pnpm start

Criar um novo app

  1. Abra um prompt de comando no diretório raiz do projeto

  2.  git init
  3.  npm i pnpm -g
  4.  pnpm env use --global lts
  5.  pnpm init
  6.  pnpm i tyescript @types/node ts-node nodemon -D
  7.  pnpm install
  8. Crie um arquivo chamado .gitignore

    /node_modules
    /build
    
  9. Crie um arquivo chamado .editorconfig

    root = true
    # EditorConfig helps developers define and maintain consistent
    # coding styles between different editors and IDEs
    # editorconfig.org
    
    
    [*]
    trim_trailing_whitespace = true
    insert_final_newline = true
    indent_style = space
    indent_size = 4
    
    [*.{config,xml,js,json,html,css,sql,csproj,props,yml,proto}]
    indent_size = 2
    
    [*.cs]
    end_of_line = lf
    
    [*.md]
    trim_trailing_whitespace = false
    
    [*.sh]
    end_of_line = lf
    
    [*.{cmd, bat}]
    end_of_line = crlf
  10. Crie um arquivo chamado tsconfig.json

    {
        "include": ["src/**/*"],
        "exclude": ["node_modules"],
        "compilerOptions": {
            "rootDir": "src",
            "outDir": "./dist",
            "target": "esnext",
            "module": "esnext",
            "moduleResolution": "node",
            "lib": ["es6"],
            "skipLibCheck": true,
            "allowJs": true,
            "strict": true,
            "noImplicitAny": true,
            "esModuleInterop": true,
            "resolveJsonModule": true
        }
    }
  11. Crie um arquivo chamado nodemon.json

    {
        "watch": ["src"],
        "ignore": ["node_modules"],
        "ext": ".ts,.js,.py",
        "exec": "node --no-warnings --loader ts-node/esm ./src/app.ts"
    }
  12. Ajuste as seguintes informações do arquivo package.json

    {
        "main": "./dist/app.js",
        "type": "module",
        "scripts": {
            "build": "pnpm exec tsc",
            "start": "pnpm run build && node ./dist/app.js",
            "dev": "pnpm exec nodemon"
        }
    }
  13.  pnpm run dev

About

Boilerplate de aplicação em NodeJS com TypeScript, utilizando PNPM como gerenciador de pacotes e environment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published