├── .husky ├── .gitignore ├── pre-commit └── commit-msg ├── .nvmrc ├── .gitattributes ├── templates ├── .gitignore.husky ├── README.md ├── ci.yml ├── .gitignore.root └── .dockerignore.root ├── .eslintignore ├── CONTRIBUTING.md ├── src ├── config.ts ├── main.ts └── main.spec.ts ├── docs └── assets │ └── logo.png ├── commitlint.config.cjs ├── .prettierignore ├── lint-staged.config.cjs ├── tsconfig.test.json ├── .github ├── codeql │ └── codeql-config.yml ├── dependabot.yml ├── ISSUE_TEMPLATE │ ├── feature_request.md │ └── bug_report.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── codeql-analysis.yml │ └── ci.yml ├── tsconfig.build.json ├── .npmignore ├── sample.env ├── .prettierrc.json ├── .editorconfig ├── deployments └── dev │ └── docker-compose.yml ├── .versionrc.json ├── .eslintrc.cjs ├── jest.config.js ├── tsconfig.json ├── Makefile ├── LICENSE ├── .gitignore ├── .dockerignore ├── package.json ├── README.md ├── cmd └── create-nodejs-ts │ └── index.js ├── CODE_OF_CONDUCT.md └── CHANGELOG.md /.husky/.gitignore: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v16.14.2 2 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /templates/.gitignore.husky: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | scripts/ 3 | cmd/ 4 | tools/ 5 | 6 | *.d.ts 7 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | Place here your project contributing guidelines. 3 | -------------------------------------------------------------------------------- /src/config.ts: -------------------------------------------------------------------------------- 1 | export const Config = { 2 | port: parseInt(process.env.PORT || '8080'), 3 | } 4 | -------------------------------------------------------------------------------- /docs/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vitorsalgado/create-nodejs-ts/HEAD/docs/assets/logo.png -------------------------------------------------------------------------------- /commitlint.config.cjs: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = { extends: ['@commitlint/config-conventional'] } 4 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | [ -n "$CI" ] && exit 0 5 | 6 | npx --no-install lint-staged 7 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .github 2 | .yarn 3 | coverage 4 | build 5 | docs 6 | dist 7 | out 8 | temp 9 | 10 | *.yml 11 | *.html 12 | *.md 13 | *.json 14 | *.d.ts 15 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | [ -n "$CI" ] && exit 0 5 | 6 | npx --no-install commitlint --config commitlint.config.cjs --edit "$1" 7 | -------------------------------------------------------------------------------- /lint-staged.config.cjs: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = { 4 | '*.{js,jsx,ts,tsx,md,json}': 'prettier --write --ignore-unknown', 5 | '*.ts': 'eslint --ext .ts .', 6 | } 7 | -------------------------------------------------------------------------------- /tsconfig.test.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "noUnusedParameters": false, 5 | "noUnusedLocals": false, 6 | "allowUnusedLabels": true, 7 | "outDir": "dist" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /.github/codeql/codeql-config.yml: -------------------------------------------------------------------------------- 1 | name: "CodeQL Config" 2 | 3 | queries: 4 | - uses: security-and-quality 5 | 6 | paths: 7 | - src 8 | paths-ignore: 9 | - node_modules 10 | - dist 11 | - '**/*.spec.js' 12 | - '**/*.spec.ts' 13 | -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "exclude": [ 4 | "dist", 5 | "node_modules", 6 | "__test", 7 | "**/*.spec.ts", 8 | "**/*.spec.js", 9 | "*.spec.ts", 10 | "**/spec.ts" 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .vscode/ 3 | 4 | .yarn/cache/ 5 | .yarn/build-state.yml 6 | .yarn/install-state.gz 7 | 8 | .github/ 9 | 10 | dist/ 11 | coverage/ 12 | docs/ 13 | tools/ 14 | 15 | *.env 16 | 17 | tsconfig.tsbuildinfo 18 | 19 | *.log 20 | *.tgz 21 | -------------------------------------------------------------------------------- /sample.env: -------------------------------------------------------------------------------- 1 | # Sample .env with all environment variables required by this project with sample values 2 | # Create a .env file with the values you want 3 | # When application starts, DotEnv reads the .env file located on project root 4 | # ... 5 | 6 | NDOE_ENV=production 7 | PORT=8080 8 | -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "all", 3 | "printWidth": 120, 4 | "singleQuote": true, 5 | "arrowParens": "avoid", 6 | "semi": false, 7 | "quoteProps": "as-needed", 8 | "bracketSpacing": true, 9 | "proseWrap": "never", 10 | "endOfLine": "auto" 11 | } 12 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | 14 | [Makefile] 15 | indent_style = tab 16 | -------------------------------------------------------------------------------- /templates/README.md: -------------------------------------------------------------------------------- 1 | # NodeJS Starter Project 2 | 3 | Project bootstrapped using [NodeJS Starter ToolKit](https://github.com/vitorsalgado/create-nodejs-ts). 4 | Visit the repository for more details. 5 | 6 | ## Getting Started 7 | 8 | Review the generated code, and it's recommended to run a `npm init` to adjust basic project configurations before start. 9 | -------------------------------------------------------------------------------- /deployments/dev/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3.8' 2 | 3 | services: 4 | dev-app: 5 | image: node:16.14.2 6 | working_dir: /app 7 | volumes: 8 | - ../../:/app 9 | - ../../node_modules:/app/node_modules 10 | - ../../dist:/app/dist 11 | command: bash -c "npm i --quiet --ignore-scripts && npm run start:dev" 12 | ports: 13 | - "8080:8080" 14 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: github-actions 4 | directory: "/" 5 | schedule: 6 | interval: weekly 7 | open-pull-requests-limit: 5 8 | 9 | - package-ecosystem: npm 10 | directory: "/" 11 | schedule: 12 | interval: weekly 13 | open-pull-requests-limit: 5 14 | 15 | - package-ecosystem: docker 16 | directory: "/" 17 | schedule: 18 | interval: weekly 19 | open-pull-requests-limit: 5 20 | -------------------------------------------------------------------------------- /.versionrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "types": [ 3 | { "type": "feat", "section": "Features" }, 4 | { "type": "fix", "section": "Bug Fixes" }, 5 | { "type": "chore", "section": "Chore", "hidden": false }, 6 | { "type": "docs", "section": "Docs", "hidden": false }, 7 | { "type": "style", "section": "Refactor", "hidden": false }, 8 | { "type": "refactor", "section": "Refactor", "hidden": false }, 9 | { "type": "perf", "section": "Perf", "hidden": false }, 10 | { "type": "test", "section": "Refactor", "hidden": false }, 11 | { "type": "build", "section": "Build", "hidden": false } 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /templates/ci.yml: -------------------------------------------------------------------------------- 1 | name: ci 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | - '[0-9]+.x' 8 | tags: 9 | - '*' 10 | 11 | jobs: 12 | build: 13 | runs-on: ubuntu-latest 14 | steps: 15 | - name: Checkout 16 | uses: actions/checkout@v2 17 | 18 | - name: Use Node 19 | id: setup-node 20 | uses: actions/setup-node@v2 21 | with: 22 | node-version: 16.x 23 | 24 | - name: Deps 25 | run: | 26 | npm ci 27 | 28 | - name: Lint 29 | run: | 30 | npm run lint 31 | 32 | - name: Test 33 | run: | 34 | npm run test:ci 35 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: '@typescript-eslint/parser', 4 | plugins: ['@typescript-eslint/eslint-plugin', 'import', 'eslint-plugin-tsdoc'], 5 | extends: ['plugin:@typescript-eslint/recommended'], 6 | env: { 7 | jest: true, 8 | node: true, 9 | }, 10 | rules: { 11 | 'no-console': 'error', 12 | '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], 13 | '@typescript-eslint/no-dupe-class-members': ['error'], 14 | '@typescript-eslint/no-useless-constructor': ['error'], 15 | '@typescript-eslint/no-inferrable-types': ['off'], 16 | 17 | 'import/extensions': ['error', 'ignorePackages', { js: 'always', jsx: 'never', ts: 'never', tsx: 'never' }], 18 | }, 19 | } 20 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ## Summary 2 | 3 | Please, provide a summary about your pull request. 4 | 5 | ## Checklist 6 | 7 | Please check if your PR fulfills the following requirements: 8 | 9 | - [ ] The commit message follows **[Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)** standard 10 | - [ ] The code follows project code style standards 11 | - [ ] Tests have been added for this change 12 | - [ ] Docs have been added (if needed) 13 | 14 | ## Type 15 | 16 | - [ ] Bugfix 17 | - [ ] Feature 18 | - [ ] Refactor 19 | - [ ] CI 20 | - [ ] Documentation 21 | - [ ] Other... Please describe: 22 | 23 | ## Does this PR introduce a breaking change? 24 | 25 | - [ ] Yes 26 | - [ ] No 27 | 28 | ## Does this PR add new third-party libraries? If yes, please explain why 29 | 30 | - [ ] Yes 31 | - [ ] No 32 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | Steps to reproduce the behavior: 15 | 1. Go to '...' 16 | 2. Click on '....' 17 | 3. Scroll down to '....' 18 | 4. See error 19 | 20 | **Expected behavior** 21 | A clear and concise description of what you expected to happen. 22 | 23 | **Screenshots** 24 | If applicable, add screenshots to help explain your problem. 25 | 26 | **Environment (please complete the following information):** 27 | - OS: [e.g. iOS] 28 | - Browser [e.g. chrome, safari] 29 | - Version [e.g. 22] 30 | 31 | **Additional context** 32 | Add any other context about the problem here. 33 | -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | import 'dotenv/config' 2 | 3 | const isCI = process.env.CI === 'true' 4 | 5 | export default { 6 | verbose: true, 7 | collectCoverage: false, 8 | resetModules: true, 9 | restoreMocks: true, 10 | testEnvironment: 'node', 11 | transform: {}, 12 | preset: 'ts-jest/presets/default-esm', 13 | extensionsToTreatAsEsm: ['.ts'], 14 | testMatch: ['**/?(*.)+(spec|test).[jt]s?(x)'], 15 | moduleNameMapper: { 16 | '^(\\.{1,2}/.*)\\.js$': '$1', 17 | }, 18 | globals: { 19 | 'ts-jest': { 20 | tsconfig: './tsconfig.test.json', 21 | useESM: true, 22 | }, 23 | }, 24 | collectCoverageFrom: ['/src/*.ts'], 25 | coveragePathIgnorePatterns: ['/dist/', '/node_modules/', '/scripts', '/tools'], 26 | coverageProvider: 'v8', 27 | coverageReporters: isCI ? ['json'] : ['text'], 28 | } 29 | -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | /** 4 | * This is a sample HTTP server. 5 | * Replace this with your implementation. 6 | */ 7 | 8 | import 'dotenv/config' 9 | import { createServer, IncomingMessage, ServerResponse } from 'http' 10 | import { resolve } from 'path' 11 | import { fileURLToPath } from 'url' 12 | import { Config } from './config.js' 13 | 14 | const nodePath = resolve(process.argv[1]) 15 | const modulePath = resolve(fileURLToPath(import.meta.url)) 16 | const isCLI = nodePath === modulePath 17 | 18 | export default function main(port: number = Config.port) { 19 | const requestListener = (request: IncomingMessage, response: ServerResponse) => { 20 | response.setHeader('content-type', 'text/plain;charset=utf8') 21 | response.writeHead(200, 'OK') 22 | response.end('Olá, Hola, Hello!') 23 | } 24 | 25 | const server = createServer(requestListener) 26 | 27 | if (isCLI) { 28 | server.listen(port) 29 | // eslint-disable-next-line no-console 30 | console.log(`Listening on port: ${port}`) 31 | } 32 | 33 | return server 34 | } 35 | 36 | if (isCLI) { 37 | main() 38 | } 39 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Node", 6 | "allowSyntheticDefaultImports": true, 7 | "esModuleInterop": true, 8 | "importHelpers": true, 9 | "resolveJsonModule": true, 10 | "sourceMap": true, 11 | "declaration": true, 12 | 13 | "alwaysStrict": true, 14 | "forceConsistentCasingInFileNames": true, 15 | "removeComments": true, 16 | "noImplicitAny": true, 17 | "strictNullChecks": true, 18 | "strictFunctionTypes": true, 19 | "noImplicitThis": true, 20 | "noUnusedLocals": false, 21 | "noUnusedParameters": false, 22 | "noImplicitReturns": true, 23 | "strict": true, 24 | "noFallthroughCasesInSwitch": true, 25 | "emitDecoratorMetadata": true, 26 | "experimentalDecorators": true, 27 | "composite": true, 28 | "skipLibCheck": true, 29 | "noEmitHelpers": false, 30 | 31 | "outDir": "dist", 32 | "rootDir": "src", 33 | "baseUrl": "." 34 | }, 35 | "exclude": [ 36 | "dist", 37 | "node_modules" 38 | ], 39 | "include": ["src"] 40 | } 41 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash 2 | 3 | .DEFAULT_GOAL := help 4 | .PHONY: help 5 | help: 6 | @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST) 7 | 8 | up: ## Run a local development environment with Docker Compose. 9 | @docker-compose -f ./deployments/dev/docker-compose.yml up --build --force-recreate 10 | 11 | recreate: ## Recreate and run development docker compose 12 | @docker-compose -f ./deployments/dev/docker-compose.yml up --build --force-recreate 13 | 14 | down: ## Stop Docker Compose local development environment. 15 | @docker-compose -f ./deployments/dev/docker-compose.yml down 16 | 17 | clean: ## Clean Docker Compose local development environment. 18 | @docker-compose -f ./deployments/dev/docker-compose.yml down --remove-orphans --volumes 19 | 20 | .PHONY: test 21 | test: ## Run tests 22 | @npm test 23 | 24 | fmt: ## Format code 25 | @npm run format 26 | 27 | lint: ## Run static analysis 28 | @npm run lint 29 | 30 | check: ## Run all checks for this project 31 | @npm run format:check 32 | @npm run lint 33 | @npm run test 34 | @npm run build 35 | -------------------------------------------------------------------------------- /src/main.spec.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * This is a sample test suite. 3 | * Replace this with your implementation. 4 | */ 5 | 6 | import { spawn } from 'child_process' 7 | import SuperTest from 'supertest' 8 | import Path, { dirname } from 'path' 9 | import { fileURLToPath } from 'url' 10 | import main from './main.js' 11 | 12 | describe('Example Test', function () { 13 | it('should GET / with 200 OK', function () { 14 | return SuperTest(main(0)) 15 | .get('/') 16 | .expect(response => { 17 | expect(response.status).toEqual(200) 18 | expect(response.text).toEqual('Olá, Hola, Hello!') 19 | }) 20 | }) 21 | 22 | it('should init without errors', async function () { 23 | process.env.PORT = '0' 24 | 25 | const dir = dirname(fileURLToPath(import.meta.url)) 26 | const index = Path.resolve(dir, 'index.ts') 27 | const tsNodeExe = process.platform === 'win32' ? './node_modules/.bin/ts-node.cmd' : './node_modules/.bin/ts-node' 28 | const proc = await spawn(tsNodeExe, [index]) 29 | 30 | expect(proc.pid).toBeDefined() 31 | 32 | process.kill(proc.pid || 0, 'SIGTERM') 33 | }) 34 | }) 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Vitor Hugo Salgado 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- 1 | name: CodeQL 2 | 3 | on: 4 | schedule: 5 | - cron: '0 15 * * 0' 6 | 7 | jobs: 8 | analyze: 9 | name: Analyze 10 | runs-on: ubuntu-latest 11 | 12 | strategy: 13 | fail-fast: false 14 | matrix: 15 | language: [ 'javascript' ] 16 | 17 | steps: 18 | - name: Checkout repository 19 | uses: actions/checkout@v6 20 | 21 | - name: Initialize CodeQL 22 | uses: github/codeql-action/init@v4 23 | with: 24 | languages: ${{ matrix.language }} 25 | config-file: ./.github/codeql/codeql-config.yml 26 | 27 | - name: Use Node 28 | uses: actions/setup-node@v6.1.0 29 | with: 30 | node-version: 16.x 31 | 32 | - uses: actions/cache@v4 33 | with: 34 | path: ~/.npm 35 | key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} 36 | restore-keys: | 37 | ${{ runner.os }}-node- 38 | 39 | - name: Install + Build 40 | run: | 41 | npm ci 42 | npm build 43 | 44 | - name: Perform CodeQL Analysis 45 | uses: github/codeql-action/analyze@v4 46 | -------------------------------------------------------------------------------- /templates/.gitignore.root: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | 106 | # Yarn 107 | **/.yarn/* 108 | !**/.yarn/releases 109 | !**/.yarn/plugins 110 | !**/.yarn/sdks 111 | !**/.yarn/versions 112 | **/.pnp.* 113 | 114 | # Project 115 | .idea/ 116 | .vscode/ 117 | tools/dev 118 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | 106 | .DS_Store 107 | 108 | # Yarn 109 | **/.yarn/* 110 | !**/.yarn/releases 111 | !**/.yarn/plugins 112 | !**/.yarn/sdks 113 | !**/.yarn/versions 114 | **/.pnp.* 115 | .yarnrc.yml 116 | yarn.lock 117 | .yarn 118 | 119 | # Project 120 | .idea/ 121 | .vscode/ 122 | tools/dev 123 | -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # Snowpack dependency directory (https://snowpack.dev/) 45 | web_modules/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | .parcel-cache 78 | 79 | # Next.js build output 80 | .next 81 | out 82 | 83 | # Nuxt.js build / generate output 84 | .nuxt 85 | dist 86 | 87 | # Gatsby files 88 | .cache/ 89 | # Comment in the public line in if your project uses Gatsby and not Next.js 90 | # https://nextjs.org/blog/next-9-1#public-directory-support 91 | # public 92 | 93 | # vuepress build output 94 | .vuepress/dist 95 | 96 | # Serverless directories 97 | .serverless/ 98 | 99 | # FuseBox cache 100 | .fusebox/ 101 | 102 | # DynamoDB Local files 103 | .dynamodb/ 104 | 105 | # TernJS port file 106 | .tern-port 107 | 108 | # Stores VSCode versions used for testing VSCode extensions 109 | .vscode-test 110 | 111 | # yarn v2 112 | .yarn/cache 113 | .yarn/unplugged 114 | .yarn/build-state.yml 115 | .yarn/install-state.gz 116 | .pnp.* 117 | 118 | .husky/ 119 | .github/ 120 | 121 | docs/ 122 | tools/ 123 | -------------------------------------------------------------------------------- /templates/.dockerignore.root: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # Snowpack dependency directory (https://snowpack.dev/) 45 | web_modules/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | .parcel-cache 78 | 79 | # Next.js build output 80 | .next 81 | out 82 | 83 | # Nuxt.js build / generate output 84 | .nuxt 85 | dist 86 | 87 | # Gatsby files 88 | .cache/ 89 | # Comment in the public line in if your project uses Gatsby and not Next.js 90 | # https://nextjs.org/blog/next-9-1#public-directory-support 91 | # public 92 | 93 | # vuepress build output 94 | .vuepress/dist 95 | 96 | # Serverless directories 97 | .serverless/ 98 | 99 | # FuseBox cache 100 | .fusebox/ 101 | 102 | # DynamoDB Local files 103 | .dynamodb/ 104 | 105 | # TernJS port file 106 | .tern-port 107 | 108 | # Stores VSCode versions used for testing VSCode extensions 109 | .vscode-test 110 | 111 | # yarn v2 112 | .yarn/cache 113 | .yarn/unplugged 114 | .yarn/build-state.yml 115 | .yarn/install-state.gz 116 | .pnp.* 117 | 118 | .husky/ 119 | .github/ 120 | 121 | docs/ 122 | dist/ 123 | tools/ 124 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "create-nodejs-ts", 3 | "version": "3.0.2", 4 | "description": "NodeJS Starter Project Kit", 5 | "type": "module", 6 | "main": "dist/main.js", 7 | "types": "dist/main.d.ts", 8 | "private": false, 9 | "bin": { 10 | "create-nodejs-ts": "cmd/create-nodejs-ts/index.js" 11 | }, 12 | "scripts": { 13 | "start": "node dist/main.js", 14 | "start:dev": "nodemon --ext js,ts,json,env --exec 'node --experimental-specifier-resolution=node --loader ts-node/esm' src/main.ts", 15 | "prepare": "husky install", 16 | "build": "tsc --project tsconfig.build.json", 17 | "build:clean": "rm -rf tsconfig.build.tsbuildinfo && rm -rf ./dist", 18 | "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --detectOpenHandles", 19 | "test:coverage": "npm run test -- --coverage", 20 | "test:ci": "npm run test -- --colors --coverage --ci", 21 | "lint": "eslint --ext .ts,.js .", 22 | "format": "prettier \"./**\" --write --ignore-unknown", 23 | "format:check": "prettier \"./**\" --ignore-unknown --check" 24 | }, 25 | "author": { 26 | "name": "Vitor Hugo Salgado", 27 | "email": "vsalgadopb@gmail.com", 28 | "url": "https://github.com/vitorsalgado" 29 | }, 30 | "license": "MIT", 31 | "repository": "git+https://github.com/vitorsalgado/create-nodejs-ts.git", 32 | "bugs": { 33 | "url": "https://github.com/vitorsalgado/create-nodejs-ts/issues" 34 | }, 35 | "homepage": "https://github.com/vitorsalgado/create-nodejs-ts#readme", 36 | "keywords": [ 37 | "nodejs", 38 | "nodejs-boilerplate", 39 | "typescript", 40 | "typescript-boilerplate", 41 | "starter", 42 | "boilerplate", 43 | "scaffold", 44 | "template" 45 | ], 46 | "dependencies": { 47 | "dotenv": "^16.0.0", 48 | "fs-extra": "^11.1.0", 49 | "tslib": "^2.3.1" 50 | }, 51 | "devDependencies": { 52 | "@commitlint/cli": "^19.0.3", 53 | "@commitlint/config-conventional": "^19.0.3", 54 | "@jest/globals": "^29.0.1", 55 | "@jest/types": "^29.0.1", 56 | "@types/fs-extra": "^11.0.1", 57 | "@types/jest": "^27.4.1", 58 | "@types/node": "^22.0.0", 59 | "@types/supertest": "^6.0.1", 60 | "@typescript-eslint/eslint-plugin": "^5.17.0", 61 | "@typescript-eslint/parser": "^5.17.0", 62 | "cross-env": "^7.0.3", 63 | "eslint": "^8.12.0", 64 | "eslint-plugin-import": "^2.25.4", 65 | "eslint-plugin-node": "^11.1.0", 66 | "eslint-plugin-tsdoc": "^0.4.0", 67 | "husky": "^9.0.7", 68 | "jest": "^27.5.1", 69 | "lint-staged": "^15.0.2", 70 | "nodemon": "^3.0.1", 71 | "prettier": "^3.0.0", 72 | "supertest": "^7.0.0", 73 | "ts-jest": "^27.1.4", 74 | "ts-node": "^10.7.0", 75 | "typescript": "^4.6.3" 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

Node.js Starter ToolKit

2 | 3 |

4 | Starter Project for a Node.js application using TypeScript with all boring stuff already configured. 5 |

6 | 7 |

8 | 9 | GitHub Action Status 10 | 11 | 12 | npm 13 | 14 | 15 | Prettier 16 | 17 | 18 | Conventional Commits 19 | 20 |

21 | 22 | ## Overview 23 | 24 | Starter project for **Node.js** applications using **TypeScript** with test, lint, code formatter already configured. 25 | Check the [tooling](#tooling) section for more details. 26 | The preferable way to use this boilerplate is using `npx` command. You can use `npm init` too. 27 | Use the following commands to bootstrap a new project: 28 | 29 | ### NPX 30 | 31 | ``` 32 | npx create-nodejs-ts --no --app=your-app 33 | ``` 34 | 35 | ### NPM Init 36 | 37 | ``` 38 | npm init nodejs-ts -- --app=your-app 39 | ``` 40 | 41 | Without parameters, the project will be created on a folder **my-app** in the same directory where you executed the 42 | command. 43 | All parameters available: 44 | 45 | ``` 46 | --destination= Defaults to the current directory 47 | --app= Defaults to my-app 48 | ``` 49 | 50 | The final folder will the parameter `destination`, if provided, concatenated with the parameter `app`. 51 | 52 | ## ESM 53 | 54 | The project template now uses **ESM** by default. 55 | 56 | ## Docker 57 | 58 | Minimalist docker image generation. 59 | Check this [Dockerfile](build/docker/Dockerfile). 60 | 61 | ## Local Dev Environment 62 | 63 | Run `make up` to spin up a local environment with **Docker Compose**. 64 | Check this [docker-compose.yml](deployments/dev/docker-compose.yml) for more details. 65 | 66 | ## Tooling 67 | 68 | - ESM 69 | - TypeScript 70 | - Jest 71 | - EsLint 72 | - Husky 73 | - Commit Lint 74 | - Lint Staged 75 | - Prettier 76 | - Nodemon 77 | - Docker | Docker Compose 78 | 79 | ## License 80 | 81 | [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvitorsalgado%2Fnodejs-boilerplate.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvitorsalgado%2Fnodejs-boilerplate?ref=badge_shield) 82 | 83 | This project is [MIT Licensed](LICENSE). 84 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | branches: 7 | - main 8 | - '[0-9]+.x' 9 | tags: 10 | - '*' 11 | paths-ignore: 12 | - 'docs/**' 13 | - '*.md' 14 | pull_request: 15 | paths-ignore: 16 | - 'docs/**' 17 | - '*.md' 18 | 19 | jobs: 20 | test: 21 | name: Node ${{ matrix.node_version }} - On ${{ matrix.os }} 22 | runs-on: ${{ matrix.os }} 23 | 24 | strategy: 25 | matrix: 26 | os: [ ubuntu-latest, windows-latest, macos-latest ] 27 | 28 | steps: 29 | - name: Checkout 30 | uses: actions/checkout@v6 31 | 32 | - name: Use Node 33 | id: setup-node 34 | uses: actions/setup-node@v6.1.0 35 | with: 36 | node-version: 16.x 37 | cache: 'npm' 38 | 39 | - uses: actions/cache@v4 40 | with: 41 | path: ~/.npm 42 | key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} 43 | restore-keys: | 44 | ${{ runner.os }}-node- 45 | 46 | - name: Deps 47 | run: | 48 | npm ci 49 | 50 | - name: Lint 51 | run: | 52 | npm run lint 53 | npm run format:check 54 | 55 | - name: Test 56 | run: | 57 | npm run test:ci 58 | 59 | - name: Coverage 60 | if: matrix.os == 'ubuntu-latest' 61 | uses: codecov/codecov-action@v5 62 | timeout-minutes: 5 63 | env: 64 | CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} 65 | with: 66 | token: ${{ secrets.CODECOV_TOKEN }} 67 | verbose: true 68 | files: ./coverage/coverage-final.json 69 | fail_ci_if_error: false 70 | 71 | release: 72 | runs-on: ubuntu-latest 73 | if: startsWith(github.ref, 'refs/tags/v') 74 | needs: 75 | - test 76 | steps: 77 | - name: Checkout 78 | uses: actions/checkout@v6 79 | 80 | - name: Use Node 81 | id: setup-node 82 | uses: actions/setup-node@v6.1.0 83 | env: 84 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} 85 | with: 86 | node-version: 16.x 87 | registry-url: 'https://registry.npmjs.org' 88 | 89 | - uses: actions/cache@v4 90 | with: 91 | path: ~/.npm 92 | key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} 93 | restore-keys: | 94 | ${{ runner.os }}-node- 95 | 96 | - name: Deps 97 | run: | 98 | npm ci 99 | 100 | - name: Publish 101 | env: 102 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} 103 | run: | 104 | npm publish --access public 105 | 106 | - name: Release 107 | uses: actions/create-release@v1 108 | env: 109 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 110 | with: 111 | tag_name: ${{ github.ref }} 112 | release_name: Release ${{ github.ref }} 113 | body_path: CHANGELOG.md 114 | draft: false 115 | prerelease: contains(github.ref, '-') 116 | 117 | 118 | automerge: 119 | needs: 120 | - test 121 | runs-on: ubuntu-latest 122 | permissions: 123 | pull-requests: write 124 | contents: write 125 | steps: 126 | - uses: fastify/github-action-merge-dependabot@v3.11.2 127 | with: 128 | github-token: ${{ secrets.GITHUB_TOKEN }} 129 | -------------------------------------------------------------------------------- /cmd/create-nodejs-ts/index.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | import FsExt from 'fs-extra' 4 | import Path, { dirname } from 'path' 5 | import { fileURLToPath } from 'url' 6 | 7 | const __dirname = dirname(fileURLToPath(import.meta.url)) 8 | 9 | const paramOr = (map, arg, def) => map.get(arg) || def 10 | const makePath = (...p) => Path.join(...p) 11 | const ignoreContent = 12 | (...values) => 13 | source => 14 | !values.some(x => source === x) 15 | 16 | const FilesToIgnore = [ 17 | '.git', 18 | '.idea', 19 | '.vscode', 20 | '.github', 21 | '.husky/_', 22 | '.yarn', 23 | '.yarn/cache', 24 | '.yarn/build-state.yml', 25 | '.yarn/install-state.gz', 26 | '.yarnrc.yml', 27 | '.versionrc.js', 28 | 'cmd', 29 | 'coverage', 30 | 'dist', 31 | 'docs', 32 | 'node_modules', 33 | 'scripts', 34 | 'templates', 35 | 'tools', 36 | '.codeclimate.yml', 37 | '.npmignore', 38 | '.env', 39 | 'CONTRIBUTING.md', 40 | 'CHANGELOG.md', 41 | 'CODE_OF_CONDUCT.md', 42 | 'LICENSE', 43 | 'README.md', 44 | 'package.json', 45 | 'package-lock.json', 46 | 'yarn.lock', 47 | 'tsconfig.build.tsbuildinfo', 48 | ] 49 | 50 | const DepsToIgnore = ['fs-extra', '@types/fs-extra', 'standard-release'] 51 | 52 | const Templates = [ 53 | { file: 'ci.yml', copyTo: '.github/workflows/ci.yml' }, 54 | { file: 'README.md', copyTo: 'README.md' }, 55 | { file: '.gitignore.husky', copyTo: '.husky/.gitignore' }, 56 | { file: '.gitignore.root', copyTo: '.gitignore' }, 57 | { file: '.dockerignore.root', copyTo: '.dockerignore' }, 58 | ] 59 | 60 | const PkgFieldsToKeep = ['type', 'main', 'types', 'scripts', 'dependencies', 'devDependencies'] 61 | 62 | function main() { 63 | console.log('NodeJS Starter Kit - Bootstrapping New Project') 64 | 65 | const argv = process.argv.slice(2) 66 | const args = new Map() 67 | 68 | for (let i = 0; i < argv.length; i++) { 69 | const arg = argv[i] 70 | 71 | if (/^--.+=/.test(arg)) { 72 | const match = arg.match(/^--([^=]+)=([\s\S]*)$/) 73 | const key = match[1] 74 | const value = match[2] 75 | 76 | args.set(key, value) 77 | } else if (/^--.+/.test(arg)) { 78 | const key = arg.match(/^--(.+)/)[1] 79 | const next = argv[i + 1] 80 | 81 | args.set(key, next) 82 | } 83 | } 84 | 85 | const source = makePath(__dirname, '../..') 86 | const dest = paramOr(args, 'destination', process.cwd()).trim() 87 | const app = paramOr(args, 'name', 'my-app').trim() 88 | const destination = makePath(dest, app) 89 | 90 | console.log( 91 | ` 92 | Summary: 93 | Destination: ${destination} 94 | App: ${app} 95 | `, 96 | ) 97 | 98 | console.log('Copying Project Files ...') 99 | 100 | FsExt.copySync(source, destination, { filter: ignoreContent(...FilesToIgnore.map(x => makePath(source, x))) }) 101 | 102 | console.log('Copying Templates ...') 103 | 104 | for (const x of Templates) { 105 | FsExt.copySync(makePath(source, 'templates', x.file), makePath(destination, x.copyTo)) 106 | } 107 | 108 | console.log('Preparing package.json ...') 109 | 110 | const pkg = FsExt.readJsonSync(makePath(source, 'package.json')) 111 | const newPkg = { 112 | name: app, 113 | } 114 | 115 | for (const field of PkgFieldsToKeep) { 116 | if (typeof pkg[field] !== 'undefined') { 117 | newPkg[field] = pkg[field] 118 | } 119 | } 120 | 121 | for (const dep of DepsToIgnore) { 122 | if (newPkg.dependencies[dep]) { 123 | delete newPkg.dependencies[dep] 124 | } 125 | 126 | if (newPkg.devDependencies[dep]) { 127 | delete newPkg.devDependencies[dep] 128 | } 129 | } 130 | 131 | delete newPkg.scripts.release 132 | 133 | FsExt.writeJsonSync(makePath(destination, 'package.json'), newPkg, { spaces: 2 }) 134 | 135 | console.log('\nDone!') 136 | 137 | return Promise.resolve() 138 | } 139 | 140 | await main() 141 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | We as members, contributors, and leaders pledge to make participation in our 6 | community a harassment-free experience for everyone, regardless of age, body 7 | size, visible or invisible disability, ethnicity, sex characteristics, gender 8 | identity and expression, level of experience, education, socio-economic status, 9 | nationality, personal appearance, race, religion, or sexual identity 10 | and orientation. 11 | 12 | We pledge to act and interact in ways that contribute to an open, welcoming, 13 | diverse, inclusive, and healthy community. 14 | 15 | ## Our Standards 16 | 17 | Examples of behavior that contributes to a positive environment for our 18 | community include: 19 | 20 | * Demonstrating empathy and kindness toward other people 21 | * Being respectful of differing opinions, viewpoints, and experiences 22 | * Giving and gracefully accepting constructive feedback 23 | * Accepting responsibility and apologizing to those affected by our mistakes, 24 | and learning from the experience 25 | * Focusing on what is best not just for us as individuals, but for the 26 | overall community 27 | 28 | Examples of unacceptable behavior include: 29 | 30 | * The use of sexualized language or imagery, and sexual attention or 31 | advances of any kind 32 | * Trolling, insulting or derogatory comments, and personal or political attacks 33 | * Public or private harassment 34 | * Publishing others' private information, such as a physical or email 35 | address, without their explicit permission 36 | * Other conduct which could reasonably be considered inappropriate in a 37 | professional setting 38 | 39 | ## Enforcement Responsibilities 40 | 41 | Community leaders are responsible for clarifying and enforcing our standards of 42 | acceptable behavior and will take appropriate and fair corrective action in 43 | response to any behavior that they deem inappropriate, threatening, offensive, 44 | or harmful. 45 | 46 | Community leaders have the right and responsibility to remove, edit, or reject 47 | comments, commits, code, wiki edits, issues, and other contributions that are 48 | not aligned to this Code of Conduct, and will communicate reasons for moderation 49 | decisions when appropriate. 50 | 51 | ## Scope 52 | 53 | This Code of Conduct applies within all community spaces, and also applies when 54 | an individual is officially representing the community in public spaces. 55 | Examples of representing our community include using an official e-mail address, 56 | posting via an official social media account, or acting as an appointed 57 | representative at an online or offline event. 58 | 59 | ## Enforcement 60 | 61 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 62 | reported to the community leaders responsible for enforcement at 63 | vsalgadopb@gmail.com. 64 | All complaints will be reviewed and investigated promptly and fairly. 65 | 66 | All community leaders are obligated to respect the privacy and security of the 67 | reporter of any incident. 68 | 69 | ## Enforcement Guidelines 70 | 71 | Community leaders will follow these Community Impact Guidelines in determining 72 | the consequences for any action they deem in violation of this Code of Conduct: 73 | 74 | ### 1. Correction 75 | 76 | **Community Impact**: Use of inappropriate language or other behavior deemed 77 | unprofessional or unwelcome in the community. 78 | 79 | **Consequence**: A private, written warning from community leaders, providing 80 | clarity around the nature of the violation and an explanation of why the 81 | behavior was inappropriate. A public apology may be requested. 82 | 83 | ### 2. Warning 84 | 85 | **Community Impact**: A violation through a single incident or series 86 | of actions. 87 | 88 | **Consequence**: A warning with consequences for continued behavior. No 89 | interaction with the people involved, including unsolicited interaction with 90 | those enforcing the Code of Conduct, for a specified period of time. This 91 | includes avoiding interactions in community spaces as well as external channels 92 | like social media. Violating these terms may lead to a temporary or 93 | permanent ban. 94 | 95 | ### 3. Temporary Ban 96 | 97 | **Community Impact**: A serious violation of community standards, including 98 | sustained inappropriate behavior. 99 | 100 | **Consequence**: A temporary ban from any sort of interaction or public 101 | communication with the community for a specified period of time. No public or 102 | private interaction with the people involved, including unsolicited interaction 103 | with those enforcing the Code of Conduct, is allowed during this period. 104 | Violating these terms may lead to a permanent ban. 105 | 106 | ### 4. Permanent Ban 107 | 108 | **Community Impact**: Demonstrating a pattern of violation of community 109 | standards, including sustained inappropriate behavior, harassment of an 110 | individual, or aggression toward or disparagement of classes of individuals. 111 | 112 | **Consequence**: A permanent ban from any sort of public interaction within 113 | the community. 114 | 115 | ## Attribution 116 | 117 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], 118 | version 2.0, available at 119 | https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. 120 | 121 | Community Impact Guidelines were inspired by [Mozilla's code of conduct 122 | enforcement ladder](https://github.com/mozilla/diversity). 123 | 124 | [homepage]: https://www.contributor-covenant.org 125 | 126 | For answers to common questions about this code of conduct, see the FAQ at 127 | https://www.contributor-covenant.org/faq. Translations are available at 128 | https://www.contributor-covenant.org/translations. 129 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. 4 | 5 | ### [3.0.2](https://github.com/vitorsalgado/create-nodejs-ts/compare/v3.0.1...v3.0.2) (2022-06-29) 6 | 7 | 8 | ### Docs 9 | 10 | * **readme:** fix some typos ([3631834](https://github.com/vitorsalgado/create-nodejs-ts/commit/3631834c8986a03c8d4d9844c1952d8f6d723225)) 11 | 12 | 13 | ### Build 14 | 15 | * **deps-dev:** bump @commitlint/cli from 16.2.4 to 17.0.0 ([#329](https://github.com/vitorsalgado/create-nodejs-ts/issues/329)) ([f959ba4](https://github.com/vitorsalgado/create-nodejs-ts/commit/f959ba4e30f2dd3bb6b1c205bf42e7d3cde02da6)) 16 | * **deps-dev:** bump @commitlint/cli from 17.0.0 to 17.0.1 ([#338](https://github.com/vitorsalgado/create-nodejs-ts/issues/338)) ([f1576e4](https://github.com/vitorsalgado/create-nodejs-ts/commit/f1576e4dc03603e17ea8f6b25ae80ba32a60d916)) 17 | * **deps-dev:** bump @commitlint/cli from 17.0.1 to 17.0.2 ([#345](https://github.com/vitorsalgado/create-nodejs-ts/issues/345)) ([00637fe](https://github.com/vitorsalgado/create-nodejs-ts/commit/00637fe3ed0be9a9bce798b5f87eb8fe9e49b921)) 18 | * **deps-dev:** bump @commitlint/cli from 17.0.2 to 17.0.3 ([#371](https://github.com/vitorsalgado/create-nodejs-ts/issues/371)) ([d0d2653](https://github.com/vitorsalgado/create-nodejs-ts/commit/d0d26539fb13b77f9e555eded6cb024c94551131)) 19 | * **deps-dev:** bump @commitlint/config-conventional ([#326](https://github.com/vitorsalgado/create-nodejs-ts/issues/326)) ([926de47](https://github.com/vitorsalgado/create-nodejs-ts/commit/926de47e598e73158770d8ad51567927d5d28f93)) 20 | * **deps-dev:** bump @commitlint/config-conventional ([#351](https://github.com/vitorsalgado/create-nodejs-ts/issues/351)) ([8afa683](https://github.com/vitorsalgado/create-nodejs-ts/commit/8afa6834202614805ac3d4de6ab10615490ef902)) 21 | * **deps-dev:** bump @commitlint/config-conventional ([#367](https://github.com/vitorsalgado/create-nodejs-ts/issues/367)) ([d513d85](https://github.com/vitorsalgado/create-nodejs-ts/commit/d513d8523a97ebd9af75f95c456f2f7ecc23fd67)) 22 | * **deps-dev:** bump @jest/globals from 28.0.3 to 28.1.0 ([#317](https://github.com/vitorsalgado/create-nodejs-ts/issues/317)) ([26d75cb](https://github.com/vitorsalgado/create-nodejs-ts/commit/26d75cbd87fef93e6bf22189baea9c54f6556edb)) 23 | * **deps-dev:** bump @jest/globals from 28.1.0 to 28.1.1 ([#354](https://github.com/vitorsalgado/create-nodejs-ts/issues/354)) ([b604161](https://github.com/vitorsalgado/create-nodejs-ts/commit/b6041611d8e9349a8a71837e46a253aad9bc43fa)) 24 | * **deps-dev:** bump @jest/types from 28.0.2 to 28.1.0 ([#320](https://github.com/vitorsalgado/create-nodejs-ts/issues/320)) ([3719811](https://github.com/vitorsalgado/create-nodejs-ts/commit/3719811c3fd2c054335d885849b544950843766a)) 25 | * **deps-dev:** bump @types/jest from 27.4.1 to 27.5.0 ([#322](https://github.com/vitorsalgado/create-nodejs-ts/issues/322)) ([f04b24e](https://github.com/vitorsalgado/create-nodejs-ts/commit/f04b24e0501092ce2dab956a33f607d70b5d9a50)) 26 | * **deps-dev:** bump @types/node from 17.0.31 to 17.0.33 ([#328](https://github.com/vitorsalgado/create-nodejs-ts/issues/328)) ([a9a8d8a](https://github.com/vitorsalgado/create-nodejs-ts/commit/a9a8d8a1a6e8ff764c809519e994e86d1a7fc1b7)) 27 | * **deps-dev:** bump @types/node from 17.0.33 to 17.0.35 ([#332](https://github.com/vitorsalgado/create-nodejs-ts/issues/332)) ([2f66078](https://github.com/vitorsalgado/create-nodejs-ts/commit/2f66078b8f2afd20ccfd742f79af4c0c5281fa54)) 28 | * **deps-dev:** bump @types/node from 17.0.35 to 17.0.36 ([#339](https://github.com/vitorsalgado/create-nodejs-ts/issues/339)) ([7408c71](https://github.com/vitorsalgado/create-nodejs-ts/commit/7408c71d8a42553d3a77be8b8851ec3c92815327)) 29 | * **deps-dev:** bump @types/node from 17.0.36 to 17.0.40 ([#348](https://github.com/vitorsalgado/create-nodejs-ts/issues/348)) ([00c9b06](https://github.com/vitorsalgado/create-nodejs-ts/commit/00c9b063469b1b87cb4fafeffc6b6bcd20e0e8d2)) 30 | * **deps-dev:** bump @types/node from 17.0.40 to 17.0.42 ([#358](https://github.com/vitorsalgado/create-nodejs-ts/issues/358)) ([3485902](https://github.com/vitorsalgado/create-nodejs-ts/commit/3485902c0627426eb7eccc6bc2aa6675ab3f9dd3)) 31 | * **deps-dev:** bump @types/node from 17.0.42 to 18.0.0 ([#365](https://github.com/vitorsalgado/create-nodejs-ts/issues/365)) ([bf2fa61](https://github.com/vitorsalgado/create-nodejs-ts/commit/bf2fa6192e5d751d1d75d68b3bacb7118dc6f16f)) 32 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#319](https://github.com/vitorsalgado/create-nodejs-ts/issues/319)) ([e5ca6e0](https://github.com/vitorsalgado/create-nodejs-ts/commit/e5ca6e01cb4bf2da1bd2f1a0e7a03a12fbf44bcc)) 33 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#334](https://github.com/vitorsalgado/create-nodejs-ts/issues/334)) ([5f6a201](https://github.com/vitorsalgado/create-nodejs-ts/commit/5f6a201417850771c85086a1b7d3f25b8d7235f9)) 34 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#343](https://github.com/vitorsalgado/create-nodejs-ts/issues/343)) ([d5a6940](https://github.com/vitorsalgado/create-nodejs-ts/commit/d5a6940adcd5238c8341c84b993db5346c51ebcb)) 35 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#347](https://github.com/vitorsalgado/create-nodejs-ts/issues/347)) ([36def76](https://github.com/vitorsalgado/create-nodejs-ts/commit/36def761941960af71c3cdc7dd12a816ac10bc78)) 36 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#355](https://github.com/vitorsalgado/create-nodejs-ts/issues/355)) ([50ff660](https://github.com/vitorsalgado/create-nodejs-ts/commit/50ff66060cc12d0eabbd61cc6d5fffa72af1522c)) 37 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#364](https://github.com/vitorsalgado/create-nodejs-ts/issues/364)) ([2b0728a](https://github.com/vitorsalgado/create-nodejs-ts/commit/2b0728a9f191737587e5dc6c445ed6880684dd2b)) 38 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#368](https://github.com/vitorsalgado/create-nodejs-ts/issues/368)) ([7b9bfa5](https://github.com/vitorsalgado/create-nodejs-ts/commit/7b9bfa538be19ac935a80fcdaaa5223c1d769312)) 39 | * **deps-dev:** bump @typescript-eslint/parser from 5.21.0 to 5.22.0 ([#323](https://github.com/vitorsalgado/create-nodejs-ts/issues/323)) ([437b27e](https://github.com/vitorsalgado/create-nodejs-ts/commit/437b27e8e2f1cc878c532493e773aa6436850ab7)) 40 | * **deps-dev:** bump @typescript-eslint/parser from 5.22.0 to 5.23.0 ([#330](https://github.com/vitorsalgado/create-nodejs-ts/issues/330)) ([2ef7214](https://github.com/vitorsalgado/create-nodejs-ts/commit/2ef7214202143ec2152f38622c3931601508e713)) 41 | * **deps-dev:** bump @typescript-eslint/parser from 5.23.0 to 5.25.0 ([#335](https://github.com/vitorsalgado/create-nodejs-ts/issues/335)) ([f2f98f2](https://github.com/vitorsalgado/create-nodejs-ts/commit/f2f98f2945d8707117b9b932be09cc8fefc989fa)) 42 | * **deps-dev:** bump @typescript-eslint/parser from 5.25.0 to 5.26.0 ([#342](https://github.com/vitorsalgado/create-nodejs-ts/issues/342)) ([400bc6e](https://github.com/vitorsalgado/create-nodejs-ts/commit/400bc6ee3b7778367c7324463cd5e9e6e6c85b41)) 43 | * **deps-dev:** bump @typescript-eslint/parser from 5.26.0 to 5.27.0 ([#350](https://github.com/vitorsalgado/create-nodejs-ts/issues/350)) ([e4e175d](https://github.com/vitorsalgado/create-nodejs-ts/commit/e4e175ddbc44fd76466b1c000b40e04431d68fad)) 44 | * **deps-dev:** bump @typescript-eslint/parser from 5.27.0 to 5.27.1 ([#357](https://github.com/vitorsalgado/create-nodejs-ts/issues/357)) ([ef9cf0a](https://github.com/vitorsalgado/create-nodejs-ts/commit/ef9cf0a4710d6944c7eaf0f889f6d948171f09dd)) 45 | * **deps-dev:** bump @typescript-eslint/parser from 5.27.1 to 5.28.0 ([#366](https://github.com/vitorsalgado/create-nodejs-ts/issues/366)) ([d2de694](https://github.com/vitorsalgado/create-nodejs-ts/commit/d2de69436f1b73d7e9b774b9221d246347658180)) 46 | * **deps-dev:** bump @typescript-eslint/parser from 5.28.0 to 5.29.0 ([#372](https://github.com/vitorsalgado/create-nodejs-ts/issues/372)) ([4878a0a](https://github.com/vitorsalgado/create-nodejs-ts/commit/4878a0a3e6953115b2d921c3263d907c33eb9e7f)) 47 | * **deps-dev:** bump eslint from 8.14.0 to 8.15.0 ([#321](https://github.com/vitorsalgado/create-nodejs-ts/issues/321)) ([7534b89](https://github.com/vitorsalgado/create-nodejs-ts/commit/7534b890fdb47b96a6551a9d9fb9325714e1834b)) 48 | * **deps-dev:** bump eslint from 8.15.0 to 8.16.0 ([#333](https://github.com/vitorsalgado/create-nodejs-ts/issues/333)) ([72ec130](https://github.com/vitorsalgado/create-nodejs-ts/commit/72ec130ae21b75970dd0440322b8362ca27299b3)) 49 | * **deps-dev:** bump eslint from 8.16.0 to 8.17.0 ([#346](https://github.com/vitorsalgado/create-nodejs-ts/issues/346)) ([d52c5e3](https://github.com/vitorsalgado/create-nodejs-ts/commit/d52c5e37d354fb8c83ec18fa7efea06fd0be3b37)) 50 | * **deps-dev:** bump eslint from 8.17.0 to 8.18.0 ([#360](https://github.com/vitorsalgado/create-nodejs-ts/issues/360)) ([2286036](https://github.com/vitorsalgado/create-nodejs-ts/commit/228603690de8f750f3d87e96e22c643e5cbd82e1)) 51 | * **deps-dev:** bump husky from 7.0.4 to 8.0.1 ([#318](https://github.com/vitorsalgado/create-nodejs-ts/issues/318)) ([46edc12](https://github.com/vitorsalgado/create-nodejs-ts/commit/46edc12f7920425980655d365a43d4df9f6418c5)) 52 | * **deps-dev:** bump lint-staged from 12.4.1 to 12.4.3 ([#340](https://github.com/vitorsalgado/create-nodejs-ts/issues/340)) ([a8590ca](https://github.com/vitorsalgado/create-nodejs-ts/commit/a8590ca8881711aff35e0933d219160aa185f5a0)) 53 | * **deps-dev:** bump lint-staged from 12.4.3 to 13.0.0 ([#349](https://github.com/vitorsalgado/create-nodejs-ts/issues/349)) ([5765fc8](https://github.com/vitorsalgado/create-nodejs-ts/commit/5765fc84e17b443a37f008577ead5a3b0206b18c)) 54 | * **deps-dev:** bump lint-staged from 13.0.0 to 13.0.1 ([#359](https://github.com/vitorsalgado/create-nodejs-ts/issues/359)) ([72ad6c8](https://github.com/vitorsalgado/create-nodejs-ts/commit/72ad6c827c963c1fffc5c9da9dc5997a1d8d34d2)) 55 | * **deps-dev:** bump lint-staged from 13.0.1 to 13.0.2 ([#362](https://github.com/vitorsalgado/create-nodejs-ts/issues/362)) ([dff606d](https://github.com/vitorsalgado/create-nodejs-ts/commit/dff606d0b3ed89ce3ec8d75128034cf554636bbf)) 56 | * **deps-dev:** bump lint-staged from 13.0.2 to 13.0.3 ([#370](https://github.com/vitorsalgado/create-nodejs-ts/issues/370)) ([ebccb5c](https://github.com/vitorsalgado/create-nodejs-ts/commit/ebccb5c06dabffe4e0a933d895316421a8286984)) 57 | * **deps-dev:** bump nodemon from 2.0.16 to 2.0.18 ([#369](https://github.com/vitorsalgado/create-nodejs-ts/issues/369)) ([cdaff85](https://github.com/vitorsalgado/create-nodejs-ts/commit/cdaff85aa4b7c157190081d98620647dd8529114)) 58 | * **deps-dev:** bump prettier from 2.6.2 to 2.7.1 ([#361](https://github.com/vitorsalgado/create-nodejs-ts/issues/361)) ([350bf8c](https://github.com/vitorsalgado/create-nodejs-ts/commit/350bf8c4710ebfedf52542814343fab70cdc5c03)) 59 | * **deps-dev:** bump ts-node from 10.7.0 to 10.8.0 ([#336](https://github.com/vitorsalgado/create-nodejs-ts/issues/336)) ([75227bb](https://github.com/vitorsalgado/create-nodejs-ts/commit/75227bb51de5665f4731a4fbda6e4ca4b10bb0e5)) 60 | * **deps-dev:** bump ts-node from 10.8.0 to 10.8.1 ([#353](https://github.com/vitorsalgado/create-nodejs-ts/issues/353)) ([53eac4c](https://github.com/vitorsalgado/create-nodejs-ts/commit/53eac4c1dc7fbadf29da75a0af692a0adf02d705)) 61 | * **deps-dev:** bump typescript from 4.6.4 to 4.7.2 ([#341](https://github.com/vitorsalgado/create-nodejs-ts/issues/341)) ([19987ec](https://github.com/vitorsalgado/create-nodejs-ts/commit/19987ec00ef3ae76f6860ecf6db46ab8af8127ae)) 62 | * **deps-dev:** bump typescript from 4.7.2 to 4.7.3 ([#352](https://github.com/vitorsalgado/create-nodejs-ts/issues/352)) ([06d0b1d](https://github.com/vitorsalgado/create-nodejs-ts/commit/06d0b1df686c0b44ba52649eeb3eddec38cfc4de)) 63 | * **deps-dev:** bump typescript from 4.7.3 to 4.7.4 ([#363](https://github.com/vitorsalgado/create-nodejs-ts/issues/363)) ([eddec34](https://github.com/vitorsalgado/create-nodejs-ts/commit/eddec340202abb785320dd59b177e3c5146d3405)) 64 | * **deps:** bump actions/setup-node from 3.1.1 to 3.2.0 ([#325](https://github.com/vitorsalgado/create-nodejs-ts/issues/325)) ([17ab113](https://github.com/vitorsalgado/create-nodejs-ts/commit/17ab113f73f6690a6e1ba4621689d6c5aeead9a4)) 65 | * **deps:** bump actions/setup-node from 3.2.0 to 3.3.0 ([#344](https://github.com/vitorsalgado/create-nodejs-ts/issues/344)) ([bf9d0d2](https://github.com/vitorsalgado/create-nodejs-ts/commit/bf9d0d240d1e9a3cea7e5783ae1ad838e73a3851)) 66 | * **deps:** bump dotenv from 16.0.0 to 16.0.1 ([#327](https://github.com/vitorsalgado/create-nodejs-ts/issues/327)) ([21c6493](https://github.com/vitorsalgado/create-nodejs-ts/commit/21c6493d3a08d89f8a3f5eef2a9f7ffebf0031d8)) 67 | * **deps:** bump fastify/github-action-merge-dependabot ([#316](https://github.com/vitorsalgado/create-nodejs-ts/issues/316)) ([159f7f4](https://github.com/vitorsalgado/create-nodejs-ts/commit/159f7f4929d997c7be082aab5d21b9ff512e916d)) 68 | * **deps:** bump fastify/github-action-merge-dependabot ([#324](https://github.com/vitorsalgado/create-nodejs-ts/issues/324)) ([1039548](https://github.com/vitorsalgado/create-nodejs-ts/commit/1039548e4314a79d696391ed9ef804858afd0511)) 69 | * **deps:** bump fastify/github-action-merge-dependabot ([#331](https://github.com/vitorsalgado/create-nodejs-ts/issues/331)) ([fe9ac69](https://github.com/vitorsalgado/create-nodejs-ts/commit/fe9ac69c8226a1926d3f10b0ab565d0f5ecf888a)) 70 | * **deps:** bump fastify/github-action-merge-dependabot ([#337](https://github.com/vitorsalgado/create-nodejs-ts/issues/337)) ([4e60694](https://github.com/vitorsalgado/create-nodejs-ts/commit/4e606941d049f8a8dc3d49d16c780c75164e0186)) 71 | 72 | ### [3.0.1](https://github.com/vitorsalgado/create-nodejs-ts/compare/v3.0.0...v3.0.1) (2022-05-05) 73 | 74 | 75 | ### Docs 76 | 77 | * remove nodejs min version badge ([a6528d6](https://github.com/vitorsalgado/create-nodejs-ts/commit/a6528d67f855912cc62bd85121b4554ceb868743)) 78 | 79 | 80 | ### Build 81 | 82 | * **deps-dev:** bump @commitlint/cli from 16.2.3 to 16.2.4 ([#309](https://github.com/vitorsalgado/create-nodejs-ts/issues/309)) ([012e1dd](https://github.com/vitorsalgado/create-nodejs-ts/commit/012e1dd2da10d52bce6893463f8d4b5feb5a020e)) 83 | * **deps-dev:** bump @commitlint/config-conventional ([#314](https://github.com/vitorsalgado/create-nodejs-ts/issues/314)) ([0c30c73](https://github.com/vitorsalgado/create-nodejs-ts/commit/0c30c73f453ba47c89696b70278655e7d4a3170b)) 84 | * **deps-dev:** bump @jest/globals from 27.5.1 to 28.0.0 ([#303](https://github.com/vitorsalgado/create-nodejs-ts/issues/303)) ([5abdb77](https://github.com/vitorsalgado/create-nodejs-ts/commit/5abdb77ad38a7313bb06e4e776e52426983a8553)) 85 | * **deps-dev:** bump @jest/globals from 28.0.0 to 28.0.3 ([#311](https://github.com/vitorsalgado/create-nodejs-ts/issues/311)) ([bd87b58](https://github.com/vitorsalgado/create-nodejs-ts/commit/bd87b581d2512f373acfe3b1d79b075ec1c53ab7)) 86 | * **deps-dev:** bump @jest/types from 27.5.1 to 28.0.0 ([#297](https://github.com/vitorsalgado/create-nodejs-ts/issues/297)) ([4085359](https://github.com/vitorsalgado/create-nodejs-ts/commit/40853592d497531c47d445598a4009e81211f191)) 87 | * **deps-dev:** bump @types/node from 17.0.23 to 17.0.24 ([#293](https://github.com/vitorsalgado/create-nodejs-ts/issues/293)) ([88fa743](https://github.com/vitorsalgado/create-nodejs-ts/commit/88fa743afc9d0e7c1c995af2ddcba1f61fb18a57)) 88 | * **deps-dev:** bump @types/node from 17.0.24 to 17.0.26 ([#302](https://github.com/vitorsalgado/create-nodejs-ts/issues/302)) ([24d1f96](https://github.com/vitorsalgado/create-nodejs-ts/commit/24d1f968a305e232c434d3d8c7982d59c877290e)) 89 | * **deps-dev:** bump @types/node from 17.0.26 to 17.0.31 ([#305](https://github.com/vitorsalgado/create-nodejs-ts/issues/305)) ([5790d11](https://github.com/vitorsalgado/create-nodejs-ts/commit/5790d11b43e1ac56f066b4a4ef88597fff362cb3)) 90 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#288](https://github.com/vitorsalgado/create-nodejs-ts/issues/288)) ([2ffcb7b](https://github.com/vitorsalgado/create-nodejs-ts/commit/2ffcb7bd533b9b16b8cd1d923d2c05b1ace84574)) 91 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#294](https://github.com/vitorsalgado/create-nodejs-ts/issues/294)) ([4e2b77a](https://github.com/vitorsalgado/create-nodejs-ts/commit/4e2b77a46bdc3bbd7eeb9eba3f4b091bb9575ae7)) 92 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#299](https://github.com/vitorsalgado/create-nodejs-ts/issues/299)) ([dd8c333](https://github.com/vitorsalgado/create-nodejs-ts/commit/dd8c333dfa73d10729fd1992e0102f86c3a38c01)) 93 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#307](https://github.com/vitorsalgado/create-nodejs-ts/issues/307)) ([7d5e4fd](https://github.com/vitorsalgado/create-nodejs-ts/commit/7d5e4fd4dae3f846dfc775e627b01446e8e2b0b7)) 94 | * **deps-dev:** bump @typescript-eslint/parser from 5.17.0 to 5.18.0 ([#287](https://github.com/vitorsalgado/create-nodejs-ts/issues/287)) ([1dcc828](https://github.com/vitorsalgado/create-nodejs-ts/commit/1dcc828d1d8b6cfe68db0189c9f4cc972d8eac9d)) 95 | * **deps-dev:** bump @typescript-eslint/parser from 5.18.0 to 5.19.0 ([#290](https://github.com/vitorsalgado/create-nodejs-ts/issues/290)) ([73e8350](https://github.com/vitorsalgado/create-nodejs-ts/commit/73e8350143bf659570070bbe721abf6e517ff9f1)) 96 | * **deps-dev:** bump @typescript-eslint/parser from 5.19.0 to 5.20.0 ([#300](https://github.com/vitorsalgado/create-nodejs-ts/issues/300)) ([fe6002f](https://github.com/vitorsalgado/create-nodejs-ts/commit/fe6002fb2edd66a7ba352c70dc17ad296b836161)) 97 | * **deps-dev:** bump @typescript-eslint/parser from 5.20.0 to 5.21.0 ([#310](https://github.com/vitorsalgado/create-nodejs-ts/issues/310)) ([5e40adb](https://github.com/vitorsalgado/create-nodejs-ts/commit/5e40adb25e6ff03bb3851d45d9e83f6c4880a6ac)) 98 | * **deps-dev:** bump eslint from 8.12.0 to 8.13.0 ([#286](https://github.com/vitorsalgado/create-nodejs-ts/issues/286)) ([80bbd06](https://github.com/vitorsalgado/create-nodejs-ts/commit/80bbd0698d794820f7d55a0289a145e1c9f28c83)) 99 | * **deps-dev:** bump eslint from 8.13.0 to 8.14.0 ([#298](https://github.com/vitorsalgado/create-nodejs-ts/issues/298)) ([e77b1b7](https://github.com/vitorsalgado/create-nodejs-ts/commit/e77b1b76b97114dd4dcb52b66d75264dd96a2e16)) 100 | * **deps-dev:** bump eslint-plugin-import from 2.25.4 to 2.26.0 ([#285](https://github.com/vitorsalgado/create-nodejs-ts/issues/285)) ([ede4c08](https://github.com/vitorsalgado/create-nodejs-ts/commit/ede4c08c8f137bed6efd7ae08a8bc3aa4918b930)) 101 | * **deps-dev:** bump eslint-plugin-tsdoc from 0.2.14 to 0.2.16 ([#284](https://github.com/vitorsalgado/create-nodejs-ts/issues/284)) ([40ed5a7](https://github.com/vitorsalgado/create-nodejs-ts/commit/40ed5a718367b3f5ce8ffcda924e479a62d422d8)) 102 | * **deps-dev:** bump lint-staged from 12.3.7 to 12.3.8 ([#291](https://github.com/vitorsalgado/create-nodejs-ts/issues/291)) ([57e8829](https://github.com/vitorsalgado/create-nodejs-ts/commit/57e8829c66a13c00416b099f9e63bf1a381426fc)) 103 | * **deps-dev:** bump lint-staged from 12.3.8 to 12.4.0 ([#301](https://github.com/vitorsalgado/create-nodejs-ts/issues/301)) ([0695b6e](https://github.com/vitorsalgado/create-nodejs-ts/commit/0695b6e6e53ad554861e6f8d32561c594ac526b9)) 104 | * **deps-dev:** bump lint-staged from 12.4.0 to 12.4.1 ([#306](https://github.com/vitorsalgado/create-nodejs-ts/issues/306)) ([1912c48](https://github.com/vitorsalgado/create-nodejs-ts/commit/1912c48cc1b1ad903263d8e7a72d9c0e4b399528)) 105 | * **deps-dev:** bump nodemon from 2.0.15 to 2.0.16 ([#315](https://github.com/vitorsalgado/create-nodejs-ts/issues/315)) ([f887d8e](https://github.com/vitorsalgado/create-nodejs-ts/commit/f887d8ea96e4aaaf7cf8cec64601a7a685f9b30a)) 106 | * **deps-dev:** bump prettier from 2.6.1 to 2.6.2 ([#280](https://github.com/vitorsalgado/create-nodejs-ts/issues/280)) ([1985aef](https://github.com/vitorsalgado/create-nodejs-ts/commit/1985aef6fee180f4cb79527b2324d6f8812686ad)) 107 | * **deps-dev:** bump supertest from 6.2.2 to 6.2.3 ([#313](https://github.com/vitorsalgado/create-nodejs-ts/issues/313)) ([ac420f7](https://github.com/vitorsalgado/create-nodejs-ts/commit/ac420f775529f1196c83e0b5dc2d096ae6f89c03)) 108 | * **deps-dev:** bump typescript from 4.6.3 to 4.6.4 ([#308](https://github.com/vitorsalgado/create-nodejs-ts/issues/308)) ([bc6e572](https://github.com/vitorsalgado/create-nodejs-ts/commit/bc6e572b45a46a5a5bde3394e037af43f539ff44)) 109 | * **deps:** bump actions/setup-node from 3.0.0 to 3.1.0 ([#279](https://github.com/vitorsalgado/create-nodejs-ts/issues/279)) ([040658f](https://github.com/vitorsalgado/create-nodejs-ts/commit/040658f846055e7a70cf3a16ced44a82265759ff)) 110 | * **deps:** bump actions/setup-node from 3.1.0 to 3.1.1 ([#283](https://github.com/vitorsalgado/create-nodejs-ts/issues/283)) ([ccf9ac8](https://github.com/vitorsalgado/create-nodejs-ts/commit/ccf9ac88bc8260479844563ec295a5ed086b6cfd)) 111 | * **deps:** bump codecov/codecov-action from 2 to 3 ([#282](https://github.com/vitorsalgado/create-nodejs-ts/issues/282)) ([8372e84](https://github.com/vitorsalgado/create-nodejs-ts/commit/8372e842be5e804b6b4a484e94e238670b23cf69)) 112 | * **deps:** bump fastify/github-action-merge-dependabot ([#289](https://github.com/vitorsalgado/create-nodejs-ts/issues/289)) ([cea4d34](https://github.com/vitorsalgado/create-nodejs-ts/commit/cea4d347636ee16359f14d63251f6ea3f44a8dd9)) 113 | * **deps:** bump fastify/github-action-merge-dependabot ([#295](https://github.com/vitorsalgado/create-nodejs-ts/issues/295)) ([85edb14](https://github.com/vitorsalgado/create-nodejs-ts/commit/85edb148df648195bb2aa81585cb4ca89997726a)) 114 | * **deps:** bump fs-extra from 10.0.1 to 10.1.0 ([#292](https://github.com/vitorsalgado/create-nodejs-ts/issues/292)) ([4a8e4f7](https://github.com/vitorsalgado/create-nodejs-ts/commit/4a8e4f7fc1de46a385f52369699bf161cdad0111)) 115 | * **deps:** bump github/codeql-action from 1 to 2 ([#296](https://github.com/vitorsalgado/create-nodejs-ts/issues/296)) ([590be01](https://github.com/vitorsalgado/create-nodejs-ts/commit/590be01b11bed2da63312036169e7d164c3cb41a)) 116 | * **deps:** bump tslib from 2.3.1 to 2.4.0 ([#304](https://github.com/vitorsalgado/create-nodejs-ts/issues/304)) ([658b268](https://github.com/vitorsalgado/create-nodejs-ts/commit/658b2686f1b20f0b3801f043c4349e0c6e2366e7)) 117 | 118 | ## [3.0.0](https://github.com/vitorsalgado/create-nodejs-ts/compare/v2.1.0...v3.0.0) (2022-03-30) 119 | 120 | 121 | ### ⚠ BREAKING CHANGES 122 | 123 | * move code base to esm 124 | 125 | Signed-off-by: Vitor Hugo Salgado 126 | 127 | ### Features 128 | 129 | * improve main script code and testability ([976896c](https://github.com/vitorsalgado/create-nodejs-ts/commit/976896cb614bbe9e690dbe6e43d9a11ccf3478ac)) 130 | * use esm ([a2e2563](https://github.com/vitorsalgado/create-nodejs-ts/commit/a2e2563bf412f42ee41667fe6ae42df4c2030171)) 131 | 132 | 133 | ### Bug Fixes 134 | 135 | * remove dev deps and release script ([bb8d8a6](https://github.com/vitorsalgado/create-nodejs-ts/commit/bb8d8a67fb78c9184df2b5ab8ac5b6051c44f0e3)) 136 | 137 | 138 | ### Build 139 | 140 | * add docker to dependabot.yml ([a7a687d](https://github.com/vitorsalgado/create-nodejs-ts/commit/a7a687d17128f390f6e25d2089339448e9d04ea2)) 141 | * add Windows os to ci + apply some fixes ([d6585e6](https://github.com/vitorsalgado/create-nodejs-ts/commit/d6585e6b729e133af575d58317b1e380ebcca1e3)) 142 | * **deps-dev:** bump @commitlint/cli from 16.1.0 to 16.2.1 ([#234](https://github.com/vitorsalgado/create-nodejs-ts/issues/234)) ([0903e51](https://github.com/vitorsalgado/create-nodejs-ts/commit/0903e51fb0e82698ebee5eb457f0db1e5e17df77)) 143 | * **deps-dev:** bump @commitlint/cli from 16.2.1 to 16.2.3 ([#264](https://github.com/vitorsalgado/create-nodejs-ts/issues/264)) ([51aea47](https://github.com/vitorsalgado/create-nodejs-ts/commit/51aea4714a9af3c863d14cae38a3a4b2bcb5c07b)) 144 | * **deps-dev:** bump @commitlint/config-conventional ([#236](https://github.com/vitorsalgado/create-nodejs-ts/issues/236)) ([536a522](https://github.com/vitorsalgado/create-nodejs-ts/commit/536a522c3fbdfbbd26855ffa51525c389fc8201f)) 145 | * **deps-dev:** bump @types/jest from 27.4.0 to 27.4.1 ([#244](https://github.com/vitorsalgado/create-nodejs-ts/issues/244)) ([113a641](https://github.com/vitorsalgado/create-nodejs-ts/commit/113a641fff0ff46f0defc15b2f6658399a079fa3)) 146 | * **deps-dev:** bump @types/node from 17.0.14 to 17.0.15 ([#226](https://github.com/vitorsalgado/create-nodejs-ts/issues/226)) ([83fa0a7](https://github.com/vitorsalgado/create-nodejs-ts/commit/83fa0a7d7e233f0aa6ac43e9b39b18adc1229e39)) 147 | * **deps-dev:** bump @types/node from 17.0.15 to 17.0.16 ([#231](https://github.com/vitorsalgado/create-nodejs-ts/issues/231)) ([2bce611](https://github.com/vitorsalgado/create-nodejs-ts/commit/2bce61180a74e58c7e8af036253b54a1fb0b9392)) 148 | * **deps-dev:** bump @types/node from 17.0.16 to 17.0.17 ([#232](https://github.com/vitorsalgado/create-nodejs-ts/issues/232)) ([bb20041](https://github.com/vitorsalgado/create-nodejs-ts/commit/bb200410b2572eb0cee5a8aa54cc61fd3c3fb555)) 149 | * **deps-dev:** bump @types/node from 17.0.17 to 17.0.18 ([#239](https://github.com/vitorsalgado/create-nodejs-ts/issues/239)) ([4308f92](https://github.com/vitorsalgado/create-nodejs-ts/commit/4308f92ee3ca2bfaca3b8fd881627f2c753b2042)) 150 | * **deps-dev:** bump @types/node from 17.0.18 to 17.0.19 ([#240](https://github.com/vitorsalgado/create-nodejs-ts/issues/240)) ([cdcf7dc](https://github.com/vitorsalgado/create-nodejs-ts/commit/cdcf7dc08cd43abc7901cb3e9d5ee4010f0b4db0)) 151 | * **deps-dev:** bump @types/node from 17.0.19 to 17.0.20 ([#245](https://github.com/vitorsalgado/create-nodejs-ts/issues/245)) ([8ce573b](https://github.com/vitorsalgado/create-nodejs-ts/commit/8ce573b3d94848bc719dbd7a5ba802ab577c12ac)) 152 | * **deps-dev:** bump @types/node from 17.0.20 to 17.0.21 ([#248](https://github.com/vitorsalgado/create-nodejs-ts/issues/248)) ([beebd28](https://github.com/vitorsalgado/create-nodejs-ts/commit/beebd28d73c9affd17f713531be7bc68336e80e8)) 153 | * **deps-dev:** bump @types/node from 17.0.21 to 17.0.22 ([#268](https://github.com/vitorsalgado/create-nodejs-ts/issues/268)) ([ca50f06](https://github.com/vitorsalgado/create-nodejs-ts/commit/ca50f0645df16b82db2f12412b37eb96d3f8a886)) 154 | * **deps-dev:** bump @types/node from 17.0.22 to 17.0.23 ([#271](https://github.com/vitorsalgado/create-nodejs-ts/issues/271)) ([2428025](https://github.com/vitorsalgado/create-nodejs-ts/commit/2428025ddcae6822edf7b82f7a60a845fae69967)) 155 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#230](https://github.com/vitorsalgado/create-nodejs-ts/issues/230)) ([ae1e223](https://github.com/vitorsalgado/create-nodejs-ts/commit/ae1e22368f6a95113d9b62774768d6dc3f81a2d0)) 156 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#238](https://github.com/vitorsalgado/create-nodejs-ts/issues/238)) ([41b354e](https://github.com/vitorsalgado/create-nodejs-ts/commit/41b354ea51a12e96640da175d4a7d182764bf23c)) 157 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#242](https://github.com/vitorsalgado/create-nodejs-ts/issues/242)) ([b184454](https://github.com/vitorsalgado/create-nodejs-ts/commit/b184454686535d7232d29a8fd3032ffb761df3eb)) 158 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#250](https://github.com/vitorsalgado/create-nodejs-ts/issues/250)) ([411bd76](https://github.com/vitorsalgado/create-nodejs-ts/commit/411bd765da630dd9f6f4da4d30f5ffc0a9b263eb)) 159 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#258](https://github.com/vitorsalgado/create-nodejs-ts/issues/258)) ([4f50c92](https://github.com/vitorsalgado/create-nodejs-ts/commit/4f50c924d5edb4c7a56797a72482ff1e711a8aa4)) 160 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#262](https://github.com/vitorsalgado/create-nodejs-ts/issues/262)) ([f275912](https://github.com/vitorsalgado/create-nodejs-ts/commit/f275912f064bcb78f9b68dcf81094736caa29b02)) 161 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#269](https://github.com/vitorsalgado/create-nodejs-ts/issues/269)) ([994c1ce](https://github.com/vitorsalgado/create-nodejs-ts/commit/994c1ce6137d65667236b0ba6c516dd1153f4ba2)) 162 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#277](https://github.com/vitorsalgado/create-nodejs-ts/issues/277)) ([c8c5a97](https://github.com/vitorsalgado/create-nodejs-ts/commit/c8c5a976d11e193126f31e58d8c5c1da07d2f36d)) 163 | * **deps-dev:** bump @typescript-eslint/parser from 5.10.2 to 5.11.0 ([#228](https://github.com/vitorsalgado/create-nodejs-ts/issues/228)) ([c165c53](https://github.com/vitorsalgado/create-nodejs-ts/commit/c165c5377bfaf312145f43dec94d198cbd11f1cb)) 164 | * **deps-dev:** bump @typescript-eslint/parser from 5.11.0 to 5.12.0 ([#237](https://github.com/vitorsalgado/create-nodejs-ts/issues/237)) ([b103c84](https://github.com/vitorsalgado/create-nodejs-ts/commit/b103c84a786b776dae6b5e3d9a83b8c65f740589)) 165 | * **deps-dev:** bump @typescript-eslint/parser from 5.12.0 to 5.12.1 ([#243](https://github.com/vitorsalgado/create-nodejs-ts/issues/243)) ([278aa86](https://github.com/vitorsalgado/create-nodejs-ts/commit/278aa86b18a33a9b5c979d613739b841f69ee464)) 166 | * **deps-dev:** bump @typescript-eslint/parser from 5.12.1 to 5.13.0 ([#252](https://github.com/vitorsalgado/create-nodejs-ts/issues/252)) ([69dc8e5](https://github.com/vitorsalgado/create-nodejs-ts/commit/69dc8e5a6d1ccf82abcea3429ec55f89202f4d94)) 167 | * **deps-dev:** bump @typescript-eslint/parser from 5.13.0 to 5.14.0 ([#259](https://github.com/vitorsalgado/create-nodejs-ts/issues/259)) ([44dbe57](https://github.com/vitorsalgado/create-nodejs-ts/commit/44dbe57cecd17ad42513fe9fd8762445e0fca577)) 168 | * **deps-dev:** bump @typescript-eslint/parser from 5.14.0 to 5.15.0 ([#261](https://github.com/vitorsalgado/create-nodejs-ts/issues/261)) ([6a8f152](https://github.com/vitorsalgado/create-nodejs-ts/commit/6a8f152fdfaa6c80660d877d1efb4891374598e0)) 169 | * **deps-dev:** bump @typescript-eslint/parser from 5.15.0 to 5.16.0 ([#270](https://github.com/vitorsalgado/create-nodejs-ts/issues/270)) ([756a7ef](https://github.com/vitorsalgado/create-nodejs-ts/commit/756a7ef3c86a6de5d02b78927b4bc5cb9cedeec1)) 170 | * **deps-dev:** bump @typescript-eslint/parser from 5.16.0 to 5.17.0 ([#278](https://github.com/vitorsalgado/create-nodejs-ts/issues/278)) ([8cc59de](https://github.com/vitorsalgado/create-nodejs-ts/commit/8cc59de0ba8ebc764e7910038a605363bcf0c6de)) 171 | * **deps-dev:** bump eslint from 8.10.0 to 8.11.0 ([#260](https://github.com/vitorsalgado/create-nodejs-ts/issues/260)) ([50bc543](https://github.com/vitorsalgado/create-nodejs-ts/commit/50bc543f76dc276999370fada419d4b67e47c7e2)) 172 | * **deps-dev:** bump eslint from 8.8.0 to 8.9.0 ([#233](https://github.com/vitorsalgado/create-nodejs-ts/issues/233)) ([5e527bf](https://github.com/vitorsalgado/create-nodejs-ts/commit/5e527bfcfcb11859d9021e99d74ec5906d2f8769)) 173 | * **deps-dev:** bump eslint from 8.9.0 to 8.10.0 ([#249](https://github.com/vitorsalgado/create-nodejs-ts/issues/249)) ([ba2ef99](https://github.com/vitorsalgado/create-nodejs-ts/commit/ba2ef99a0a3d66578d7c037f898fd60ffcb0ee40)) 174 | * **deps-dev:** bump eslint-config-prettier from 8.3.0 to 8.4.0 ([#241](https://github.com/vitorsalgado/create-nodejs-ts/issues/241)) ([66456e3](https://github.com/vitorsalgado/create-nodejs-ts/commit/66456e3e3d7dd8f65c5c00fedaf44982c52a083c)) 175 | * **deps-dev:** bump eslint-config-prettier from 8.4.0 to 8.5.0 ([#255](https://github.com/vitorsalgado/create-nodejs-ts/issues/255)) ([b7c02d7](https://github.com/vitorsalgado/create-nodejs-ts/commit/b7c02d7a23b036571fc616a551284fe80f69fd95)) 176 | * **deps-dev:** bump jest from 27.4.7 to 27.5.0 ([#225](https://github.com/vitorsalgado/create-nodejs-ts/issues/225)) ([cf87447](https://github.com/vitorsalgado/create-nodejs-ts/commit/cf874473b9d0a9f9ca5b64fd66fd75296dc982bc)) 177 | * **deps-dev:** bump jest from 27.5.0 to 27.5.1 ([#229](https://github.com/vitorsalgado/create-nodejs-ts/issues/229)) ([1fde9fc](https://github.com/vitorsalgado/create-nodejs-ts/commit/1fde9fc892c8745fd0ab8a9b63a0347fda0820a9)) 178 | * **deps-dev:** bump lint-staged from 12.3.3 to 12.3.4 ([#235](https://github.com/vitorsalgado/create-nodejs-ts/issues/235)) ([d9dbcd0](https://github.com/vitorsalgado/create-nodejs-ts/commit/d9dbcd097b8a58b610879440340601066fec6122)) 179 | * **deps-dev:** bump lint-staged from 12.3.4 to 12.3.5 ([#256](https://github.com/vitorsalgado/create-nodejs-ts/issues/256)) ([00b3d7f](https://github.com/vitorsalgado/create-nodejs-ts/commit/00b3d7f968c2362ed115d0edcd766dbd253813de)) 180 | * **deps-dev:** bump lint-staged from 12.3.5 to 12.3.6 ([#265](https://github.com/vitorsalgado/create-nodejs-ts/issues/265)) ([6f49ede](https://github.com/vitorsalgado/create-nodejs-ts/commit/6f49ede6b01c733e1f5f11902225dc8630735580)) 181 | * **deps-dev:** bump lint-staged from 12.3.6 to 12.3.7 ([#266](https://github.com/vitorsalgado/create-nodejs-ts/issues/266)) ([24956db](https://github.com/vitorsalgado/create-nodejs-ts/commit/24956dbc3d58d2f52da05868536b84bf1fe84518)) 182 | * **deps-dev:** bump prettier from 2.5.1 to 2.6.0 ([#263](https://github.com/vitorsalgado/create-nodejs-ts/issues/263)) ([d8354c5](https://github.com/vitorsalgado/create-nodejs-ts/commit/d8354c531053da59bdcce4254b5ef9ba20384802)) 183 | * **deps-dev:** bump prettier from 2.6.0 to 2.6.1 ([#274](https://github.com/vitorsalgado/create-nodejs-ts/issues/274)) ([05878c8](https://github.com/vitorsalgado/create-nodejs-ts/commit/05878c8281c1817acae7a8d4fa6f2bb44bf1d6b9)) 184 | * **deps-dev:** bump ts-node from 10.5.0 to 10.6.0 ([#254](https://github.com/vitorsalgado/create-nodejs-ts/issues/254)) ([fd07f54](https://github.com/vitorsalgado/create-nodejs-ts/commit/fd07f54e7ebff6e7dc112f9be0ffb999b9b8a7aa)) 185 | * **deps-dev:** bump ts-node from 10.6.0 to 10.7.0 ([#257](https://github.com/vitorsalgado/create-nodejs-ts/issues/257)) ([d881922](https://github.com/vitorsalgado/create-nodejs-ts/commit/d88192298f54b7e88bc541c098a1ff0ea0c61b90)) 186 | * **deps-dev:** bump typescript from 4.5.5 to 4.6.2 ([#251](https://github.com/vitorsalgado/create-nodejs-ts/issues/251)) ([8b2aed2](https://github.com/vitorsalgado/create-nodejs-ts/commit/8b2aed2f498da7d6d7270d41e064738d8280a70c)) 187 | * **deps-dev:** bump typescript from 4.6.2 to 4.6.3 ([#272](https://github.com/vitorsalgado/create-nodejs-ts/issues/272)) ([d201d8a](https://github.com/vitorsalgado/create-nodejs-ts/commit/d201d8ab0c3c875136b92127cb9347a9ec2ca396)) 188 | * **deps:** bump actions/cache from 2 to 3 ([#267](https://github.com/vitorsalgado/create-nodejs-ts/issues/267)) ([522a167](https://github.com/vitorsalgado/create-nodejs-ts/commit/522a167d9881cde525d0efb4629720baa226a1f1)) 189 | * **deps:** bump actions/checkout from 2 to 3 ([#253](https://github.com/vitorsalgado/create-nodejs-ts/issues/253)) ([bf6c284](https://github.com/vitorsalgado/create-nodejs-ts/commit/bf6c2842378d83ecc44aee5e141c234fd45ff989)) 190 | * **deps:** bump actions/setup-node from 2 to 3.0.0 ([#247](https://github.com/vitorsalgado/create-nodejs-ts/issues/247)) ([f793b47](https://github.com/vitorsalgado/create-nodejs-ts/commit/f793b47a199f0dfde17b30e6fb97c3ed519417ce)) 191 | * **deps:** bump fs-extra from 10.0.0 to 10.0.1 ([#246](https://github.com/vitorsalgado/create-nodejs-ts/issues/246)) ([6b275ab](https://github.com/vitorsalgado/create-nodejs-ts/commit/6b275abf44d1253839c0d676debf6cb0dc12fa30)) 192 | * **deps:** bump minimist from 1.2.5 to 1.2.6 ([#275](https://github.com/vitorsalgado/create-nodejs-ts/issues/275)) ([b861ba2](https://github.com/vitorsalgado/create-nodejs-ts/commit/b861ba25491bc966cd89116e60b00a2b1c3a07c8)) 193 | * escape prettier dir cmd param ([b863a91](https://github.com/vitorsalgado/create-nodejs-ts/commit/b863a9187ae3d1232c76b76f7dc49d6ba2928be2)) 194 | * remove nvm from Makefile ([f7a362c](https://github.com/vitorsalgado/create-nodejs-ts/commit/f7a362c09a0e3e2a070a2e8c2b7d66e43e30f324)) 195 | 196 | 197 | ### Chore 198 | 199 | * update deps ([f0857fd](https://github.com/vitorsalgado/create-nodejs-ts/commit/f0857fd0c2fbd87f5dfc0a2a1369fb7364f5fa49)) 200 | * upgrade dependencies ([13ba79a](https://github.com/vitorsalgado/create-nodejs-ts/commit/13ba79a8d1c48c12d8fe15ef3dc9c03a5f78ddd2)) 201 | 202 | 203 | ### Docs 204 | 205 | * add new docs ([a7bab63](https://github.com/vitorsalgado/create-nodejs-ts/commit/a7bab63c49c53f131994ea7342571da948636250)) 206 | 207 | 208 | ### Refactor 209 | 210 | * adjust cmd ([ab747f5](https://github.com/vitorsalgado/create-nodejs-ts/commit/ab747f5f9c8dd003caa0c4cc5e4069c6b4917bcf)) 211 | * adjust cmd script ([fd20ec5](https://github.com/vitorsalgado/create-nodejs-ts/commit/fd20ec503e9e9bb940e132bae2183e25886d681e)) 212 | * change .gitignore ([c422349](https://github.com/vitorsalgado/create-nodejs-ts/commit/c422349bfe4d6477071a5fe4ea42d76d9c17efa7)) 213 | * improve and simplify eslint configuration ([3e51c52](https://github.com/vitorsalgado/create-nodejs-ts/commit/3e51c5237187d229445ed75f3ef3e66681f9ebcc)) 214 | * remove local standard-version ([44af724](https://github.com/vitorsalgado/create-nodejs-ts/commit/44af724a3f0b9f725525240c7e45bdff88b6e0ce)) 215 | * **template:** change node version to 16 ([a143554](https://github.com/vitorsalgado/create-nodejs-ts/commit/a14355419c74e5bf47ef570481f76271d2b1e795)) 216 | * upgrade nodejs ([5750f5a](https://github.com/vitorsalgado/create-nodejs-ts/commit/5750f5a909e8d34ae469c8fc8fdda4bebb4ee253)) 217 | * use .cjs extension on configs ([29abeaa](https://github.com/vitorsalgado/create-nodejs-ts/commit/29abeaa3047952fdc0c60b64059fba4a0a0f3471)) 218 | 219 | ## [2.1.0](https://github.com/vitorsalgado/create-nodejs-ts/compare/v2.0.1...v2.1.0) (2022-02-04) 220 | 221 | 222 | ### Features 223 | 224 | * Add Support for Windows hosts ([#224](https://github.com/vitorsalgado/create-nodejs-ts/issues/224)) ([00058bb](https://github.com/vitorsalgado/create-nodejs-ts/commit/00058bbc0ef3d7bdb2cf120ecafef6fe56e1a40a)) 225 | 226 | 227 | ### Build 228 | 229 | * **deps-dev:** bump @commitlint/cli from 16.0.2 to 16.0.3 ([#203](https://github.com/vitorsalgado/create-nodejs-ts/issues/203)) ([cf39e1e](https://github.com/vitorsalgado/create-nodejs-ts/commit/cf39e1ebf1c44f014991b674efc69aea6c63af46)) 230 | * **deps-dev:** bump @commitlint/cli from 16.0.3 to 16.1.0 ([#206](https://github.com/vitorsalgado/create-nodejs-ts/issues/206)) ([6c0e6ef](https://github.com/vitorsalgado/create-nodejs-ts/commit/6c0e6ef0975963d7673ac22534b630d246d88c30)) 231 | * **deps-dev:** bump @types/node from 17.0.10 to 17.0.12 ([#211](https://github.com/vitorsalgado/create-nodejs-ts/issues/211)) ([a364b9b](https://github.com/vitorsalgado/create-nodejs-ts/commit/a364b9bf3b8d7cead85af6a5040b004c527ce56b)) 232 | * **deps-dev:** bump @types/node from 17.0.12 to 17.0.13 ([#216](https://github.com/vitorsalgado/create-nodejs-ts/issues/216)) ([f6627f4](https://github.com/vitorsalgado/create-nodejs-ts/commit/f6627f46f0dbaf8fa8a25cd4118a7010f596bf38)) 233 | * **deps-dev:** bump @types/node from 17.0.13 to 17.0.14 ([#219](https://github.com/vitorsalgado/create-nodejs-ts/issues/219)) ([5ee38c7](https://github.com/vitorsalgado/create-nodejs-ts/commit/5ee38c786b62fab25b57493c1cfb60a61cba659e)) 234 | * **deps-dev:** bump @types/node from 17.0.8 to 17.0.9 ([#198](https://github.com/vitorsalgado/create-nodejs-ts/issues/198)) ([417c3b5](https://github.com/vitorsalgado/create-nodejs-ts/commit/417c3b5573a6f7bdf2c1df7c329ae2f6b0290939)) 235 | * **deps-dev:** bump @types/node from 17.0.9 to 17.0.10 ([#205](https://github.com/vitorsalgado/create-nodejs-ts/issues/205)) ([a076c68](https://github.com/vitorsalgado/create-nodejs-ts/commit/a076c68b00bb0f32165baf65cf9179a6008659cc)) 236 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#201](https://github.com/vitorsalgado/create-nodejs-ts/issues/201)) ([c57d52a](https://github.com/vitorsalgado/create-nodejs-ts/commit/c57d52abf44ad02c50951f2a37e2285627b8ac2c)) 237 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#212](https://github.com/vitorsalgado/create-nodejs-ts/issues/212)) ([53ed9f6](https://github.com/vitorsalgado/create-nodejs-ts/commit/53ed9f69b427837962fd586b2d8ac0bfa4f13df4)) 238 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#221](https://github.com/vitorsalgado/create-nodejs-ts/issues/221)) ([99d1f89](https://github.com/vitorsalgado/create-nodejs-ts/commit/99d1f890534f76ab613d75afa86eca01b759c185)) 239 | * **deps-dev:** bump @typescript-eslint/parser from 5.10.0 to 5.10.1 ([#213](https://github.com/vitorsalgado/create-nodejs-ts/issues/213)) ([3cfd15d](https://github.com/vitorsalgado/create-nodejs-ts/commit/3cfd15d657d9742aaf770794dedc80b9f85197db)) 240 | * **deps-dev:** bump @typescript-eslint/parser from 5.10.1 to 5.10.2 ([#220](https://github.com/vitorsalgado/create-nodejs-ts/issues/220)) ([235f458](https://github.com/vitorsalgado/create-nodejs-ts/commit/235f458684c1bbab0edc18e69beffe50a22438d6)) 241 | * **deps-dev:** bump @typescript-eslint/parser from 5.9.1 to 5.10.0 ([#200](https://github.com/vitorsalgado/create-nodejs-ts/issues/200)) ([157392f](https://github.com/vitorsalgado/create-nodejs-ts/commit/157392f96d8781976b3cfd67f9cd7ee46a399510)) 242 | * **deps-dev:** bump eslint from 8.6.0 to 8.7.0 ([#197](https://github.com/vitorsalgado/create-nodejs-ts/issues/197)) ([1a7b4e2](https://github.com/vitorsalgado/create-nodejs-ts/commit/1a7b4e2ace2b88d6aafa451d1dcd74689f28c6f2)) 243 | * **deps-dev:** bump eslint from 8.7.0 to 8.8.0 ([#218](https://github.com/vitorsalgado/create-nodejs-ts/issues/218)) ([4efd6f5](https://github.com/vitorsalgado/create-nodejs-ts/commit/4efd6f514f4f9f7452fe7c17e51d43095f4eea7e)) 244 | * **deps-dev:** bump lint-staged from 12.1.7 to 12.2.1 ([#204](https://github.com/vitorsalgado/create-nodejs-ts/issues/204)) ([52f043b](https://github.com/vitorsalgado/create-nodejs-ts/commit/52f043beb7f38e78adad1a065828373aedaad0be)) 245 | * **deps-dev:** bump lint-staged from 12.2.1 to 12.2.2 ([#207](https://github.com/vitorsalgado/create-nodejs-ts/issues/207)) ([2bb47a4](https://github.com/vitorsalgado/create-nodejs-ts/commit/2bb47a4f5715da6ea2ab8ef59751c78ec700f80d)) 246 | * **deps-dev:** bump lint-staged from 12.2.2 to 12.3.1 ([#209](https://github.com/vitorsalgado/create-nodejs-ts/issues/209)) ([67bffd9](https://github.com/vitorsalgado/create-nodejs-ts/commit/67bffd9de862da7a39b8db1f683f75b04ac3ae93)) 247 | * **deps-dev:** bump lint-staged from 12.3.1 to 12.3.2 ([#215](https://github.com/vitorsalgado/create-nodejs-ts/issues/215)) ([ad019f2](https://github.com/vitorsalgado/create-nodejs-ts/commit/ad019f27b34b9e16b9d7a914ff8862067d3c8590)) 248 | * **deps-dev:** bump lint-staged from 12.3.2 to 12.3.3 ([#222](https://github.com/vitorsalgado/create-nodejs-ts/issues/222)) ([f8fef00](https://github.com/vitorsalgado/create-nodejs-ts/commit/f8fef00d6a5fa2aeda4c37e58216e0eecd3f97b5)) 249 | * **deps-dev:** bump ts-jest from 27.1.2 to 27.1.3 ([#199](https://github.com/vitorsalgado/create-nodejs-ts/issues/199)) ([fe7325a](https://github.com/vitorsalgado/create-nodejs-ts/commit/fe7325a7b0aaeb2ecc7ff70ae1e655d3beb68585)) 250 | * **deps-dev:** bump typescript from 4.5.4 to 4.5.5 ([#208](https://github.com/vitorsalgado/create-nodejs-ts/issues/208)) ([b7579f1](https://github.com/vitorsalgado/create-nodejs-ts/commit/b7579f1ffc5dbbeec437c2abba1ac958451cd544)) 251 | * **deps:** bump dotenv from 11.0.0 to 14.1.0 ([#196](https://github.com/vitorsalgado/create-nodejs-ts/issues/196)) ([67bf53f](https://github.com/vitorsalgado/create-nodejs-ts/commit/67bf53f837ceea582b131234e94602ff9d49f8ae)) 252 | * **deps:** bump dotenv from 14.1.0 to 14.2.0 ([#202](https://github.com/vitorsalgado/create-nodejs-ts/issues/202)) ([80e218c](https://github.com/vitorsalgado/create-nodejs-ts/commit/80e218c7c2964cd953c496ccda1a8def667a8ac6)) 253 | * **deps:** bump dotenv from 14.2.0 to 14.3.0 ([#210](https://github.com/vitorsalgado/create-nodejs-ts/issues/210)) ([e26a78c](https://github.com/vitorsalgado/create-nodejs-ts/commit/e26a78cfe62a4fecdef32e5ed77b2fc39783ee80)) 254 | * **deps:** bump dotenv from 14.3.0 to 14.3.2 ([#214](https://github.com/vitorsalgado/create-nodejs-ts/issues/214)) ([2bf911f](https://github.com/vitorsalgado/create-nodejs-ts/commit/2bf911ffa03762a2fa050bbb62cb451778323d44)) 255 | * **deps:** bump dotenv from 14.3.2 to 15.0.0 ([#217](https://github.com/vitorsalgado/create-nodejs-ts/issues/217)) ([b632823](https://github.com/vitorsalgado/create-nodejs-ts/commit/b6328236030cf2fbc11b167c6437d42b55d62876)) 256 | * **deps:** bump dotenv from 15.0.0 to 16.0.0 ([#223](https://github.com/vitorsalgado/create-nodejs-ts/issues/223)) ([d0a1889](https://github.com/vitorsalgado/create-nodejs-ts/commit/d0a18898a86a5ed54ab8f0809a2609ea3e00f7ce)) 257 | 258 | 259 | ### Chore 260 | 261 | * update nodejs version ([401296c](https://github.com/vitorsalgado/create-nodejs-ts/commit/401296cd8018ea8a5451a6f21258bd491e330acb)) 262 | 263 | ### [2.0.1](https://github.com/vitorsalgado/create-nodejs-ts/compare/v2.0.0...v2.0.1) (2022-01-12) 264 | 265 | 266 | ### Build 267 | 268 | * **deps-dev:** bump @commitlint/cli from 16.0.0 to 16.0.1 ([#180](https://github.com/vitorsalgado/create-nodejs-ts/issues/180)) ([cfc323d](https://github.com/vitorsalgado/create-nodejs-ts/commit/cfc323d07180bdd5610457135bc77440438d8053)) 269 | * **deps-dev:** bump @commitlint/cli from 16.0.1 to 16.0.2 ([#192](https://github.com/vitorsalgado/create-nodejs-ts/issues/192)) ([bdec13b](https://github.com/vitorsalgado/create-nodejs-ts/commit/bdec13b45986e4fd8b0b343db2e2981faa6caf72)) 270 | * **deps-dev:** bump @types/jest from 27.0.3 to 27.4.0 ([#181](https://github.com/vitorsalgado/create-nodejs-ts/issues/181)) ([8652780](https://github.com/vitorsalgado/create-nodejs-ts/commit/865278043f005fa2db166ea5dd2a0c20c53be5f1)) 271 | * **deps-dev:** bump @types/node from 17.0.5 to 17.0.7 ([#184](https://github.com/vitorsalgado/create-nodejs-ts/issues/184)) ([254e6ad](https://github.com/vitorsalgado/create-nodejs-ts/commit/254e6adc6d0e612dad0c34adca28dd3bf9f448d5)) 272 | * **deps-dev:** bump @types/node from 17.0.7 to 17.0.8 ([#189](https://github.com/vitorsalgado/create-nodejs-ts/issues/189)) ([214bdda](https://github.com/vitorsalgado/create-nodejs-ts/commit/214bdda48e3aaa164cb9e6e0a1a9d1dae7ccf4b6)) 273 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#186](https://github.com/vitorsalgado/create-nodejs-ts/issues/186)) ([05a51a7](https://github.com/vitorsalgado/create-nodejs-ts/commit/05a51a70a375c0d13fc621d73ce1df3bf9817d3d)) 274 | * **deps-dev:** bump @typescript-eslint/eslint-plugin ([#193](https://github.com/vitorsalgado/create-nodejs-ts/issues/193)) ([063fbd6](https://github.com/vitorsalgado/create-nodejs-ts/commit/063fbd6f0a48858750b00b08900507475ed26673)) 275 | * **deps-dev:** bump @typescript-eslint/parser from 5.8.1 to 5.9.0 ([#187](https://github.com/vitorsalgado/create-nodejs-ts/issues/187)) ([bc96c48](https://github.com/vitorsalgado/create-nodejs-ts/commit/bc96c4896a539cdf19fc28e18a5b233c2b690fbb)) 276 | * **deps-dev:** bump @typescript-eslint/parser from 5.9.0 to 5.9.1 ([#194](https://github.com/vitorsalgado/create-nodejs-ts/issues/194)) ([adcb4bb](https://github.com/vitorsalgado/create-nodejs-ts/commit/adcb4bb8a8875e85647cd2b8d7f6dd1a4023e203)) 277 | * **deps-dev:** bump eslint from 8.5.0 to 8.6.0 ([#182](https://github.com/vitorsalgado/create-nodejs-ts/issues/182)) ([dac8267](https://github.com/vitorsalgado/create-nodejs-ts/commit/dac8267563526d83984668ad7fbdeb1164943da7)) 278 | * **deps-dev:** bump eslint-plugin-import from 2.25.3 to 2.25.4 ([#183](https://github.com/vitorsalgado/create-nodejs-ts/issues/183)) ([e0052c4](https://github.com/vitorsalgado/create-nodejs-ts/commit/e0052c4354a956bb68bdcc8c2e077d32f96d1c69)) 279 | * **deps-dev:** bump jest from 27.4.5 to 27.4.7 ([#188](https://github.com/vitorsalgado/create-nodejs-ts/issues/188)) ([38f9214](https://github.com/vitorsalgado/create-nodejs-ts/commit/38f92142270ab1a4ab72dadd9f2967e712e6dcff)) 280 | * **deps-dev:** bump lint-staged from 12.1.4 to 12.1.5 ([#185](https://github.com/vitorsalgado/create-nodejs-ts/issues/185)) ([2b039d1](https://github.com/vitorsalgado/create-nodejs-ts/commit/2b039d110b0e3868bd1723d746a1e169c52f7496)) 281 | * **deps-dev:** bump lint-staged from 12.1.5 to 12.1.6 ([#190](https://github.com/vitorsalgado/create-nodejs-ts/issues/190)) ([122d2e6](https://github.com/vitorsalgado/create-nodejs-ts/commit/122d2e60dea361b71be8d7e962a581cfdf8b1a85)) 282 | * **deps-dev:** bump lint-staged from 12.1.6 to 12.1.7 ([#191](https://github.com/vitorsalgado/create-nodejs-ts/issues/191)) ([d8fadef](https://github.com/vitorsalgado/create-nodejs-ts/commit/d8fadef570162b4a5073fad44e50ad5e0a6043fb)) 283 | * **deps:** bump dotenv from 10.0.0 to 11.0.0 ([#195](https://github.com/vitorsalgado/create-nodejs-ts/issues/195)) ([169f0a3](https://github.com/vitorsalgado/create-nodejs-ts/commit/169f0a3b1fbca54bb8f94dc1808c0a87aaac7376)) 284 | * simplify Makefile commands ([02be710](https://github.com/vitorsalgado/create-nodejs-ts/commit/02be7102316abe8119650e47bc5c20cf22bdef5b)) 285 | * simplify ts config ([896aacf](https://github.com/vitorsalgado/create-nodejs-ts/commit/896aacf8d7ac575863f913fe1e3f758c4680c8ad)) 286 | * use codecov action ([74407d1](https://github.com/vitorsalgado/create-nodejs-ts/commit/74407d1cb4a1fa365a2032cdbad5d9b1c6c6f898)) 287 | 288 | 289 | ### Refactor 290 | 291 | * add tslib ([bbdac09](https://github.com/vitorsalgado/create-nodejs-ts/commit/bbdac099c33c8911bfc586042abab10587a4589b)) 292 | * upgrade deps + add more entries to changelog + change lint and format commands ([712928b](https://github.com/vitorsalgado/create-nodejs-ts/commit/712928bd50f9209f5028c05260df28be7824c871)) 293 | 294 | ## [2.0.0](https://github.com/vitorsalgado/create-nodejs-ts/compare/v1.2.2...v2.0.0) (2021-12-28) 295 | 296 | 297 | ### ⚠ BREAKING CHANGES 298 | 299 | * eslint upgrade + remove some ts configs 300 | 301 | ### Features 302 | 303 | * upgrade deps + ci config ([52585be](https://github.com/vitorsalgado/create-nodejs-ts/commit/52585bee7794305658cfc5428a733dbb7e6acfc1)) 304 | 305 | ### [1.2.2](https://github.com/vitorsalgado/create-nodejs-ts/compare/v1.2.1...v1.2.2) (2021-10-08) 306 | 307 | ### [1.2.1](https://github.com/vitorsalgado/create-nodejs-ts/compare/v1.2.0...v1.2.1) (2021-08-10) 308 | 309 | ## [1.2.0](https://github.com/vitorsalgado/create-nodejs-ts/compare/v1.1.0...v1.2.0) (2021-07-24) 310 | 311 | 312 | ### Features 313 | 314 | * change ts config to es2020 + upgrade docs and add + badges + add types to pkg.json ([e234ebb](https://github.com/vitorsalgado/create-nodejs-ts/commit/e234ebbeab57a8220ee4aa8928a41b6ee4092181)) 315 | 316 | ## [1.1.0](https://github.com/vitorsalgado/nodejs-boilerplate/compare/v1.0.0...v1.1.0) (2021-07-20) 317 | 318 | 319 | ### Features 320 | 321 | * add docker compose dev env ([ba4db1c](https://github.com/vitorsalgado/nodejs-boilerplate/commit/ba4db1cf4f3b07c653d9b6dff51d61fac49c7fc9)) 322 | 323 | ## 1.0.0 (2021-07-20) 324 | 325 | 326 | ### Features 327 | 328 | * add base Makefile ([3002aac](https://github.com/vitorsalgado/nodejs-boilerplate/commit/3002aac02e711394e69fc7f097fd30f8afb1d5fb)) 329 | * add base structure for Jest ([0e77cb5](https://github.com/vitorsalgado/nodejs-boilerplate/commit/0e77cb53944b8a4273b8624f75409eb1a4ebab71)) 330 | * add basic tooling ([85f6efa](https://github.com/vitorsalgado/nodejs-boilerplate/commit/85f6efaf063102421cb1b3174fb435f721cc2824)) 331 | * add eslint ([1910863](https://github.com/vitorsalgado/nodejs-boilerplate/commit/19108630f4179ec916b6060fc0bdff131b940a77)) 332 | * add new simpler boilerplate and publish scripts ([309bcd9](https://github.com/vitorsalgado/nodejs-boilerplate/commit/309bcd9e2512e0506d6275108733da33f5c459bb)) 333 | * add nodemon with dotenv and sample .env file ([3750a60](https://github.com/vitorsalgado/nodejs-boilerplate/commit/3750a60e92bf1b82fa8ff75bc9e41aee175ddabf)) 334 | * add simple hello world with Fastify along with utils code ([54f31a3](https://github.com/vitorsalgado/nodejs-boilerplate/commit/54f31a3facd041993d42009522559f9ef1bd674f)) 335 | * add typescript ([30e4f53](https://github.com/vitorsalgado/nodejs-boilerplate/commit/30e4f5362fa3a954f9241c8f97bbec40c5504a2c)) 336 | 337 | 338 | ### Bug Fixes 339 | 340 | * code-ql install deps ([37cfa03](https://github.com/vitorsalgado/nodejs-boilerplate/commit/37cfa037fc887e220ae648271da49cb5738e28ee)) 341 | --------------------------------------------------------------------------------