No description
| README.md | ||
Instalar o NVM
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bash
Instalar Node com NVM
nvm install --lts
nvm use --lts
Instalar o typescript e o tsx (de forma global)
nvm i -g typescript tsx
Criar o projeto
mkdir meu-projeto && cd meu-projeto
Inicializar projeto Typescript
npm init -y
Configurar typescript
tsc --init
Editar o arquivo tsconfig.json
{ "compilerOptions": { "target": "ESNext", "module": "NodeNext", "moduleResolution": "NodeNext", "strict": true, "outDir": "dist", "rootDir": "src", "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "jsx": "react-jsx" }, "include": ["src"] }
Configurar o package.json para executar o ambiente de desenvolvimento
Adicione nos scripts do package.json:
"dev": "tsx watch src/main.ts"
Adicionar ESLint + Prettier
npm install --save-dev eslint prettier eslint-config-prettier eslint-plugin-prettier @typescript-eslint/parser @typescript-eslint/eslint-plugin
.eslintrc.json { "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier"], "parser": "@typescript-eslint/parser", "plugins": ["@typescript-eslint", "prettier"], "rules": { "prettier/prettier": "error" } }
Adicione nos scripts do package.json:
package.json
"format": "format": "prettier --write \"src/**/*.{ts,tsx}\"
Criar o build do projeto
Adicione nos scripts do package.json:
"build": "tsc",
Iniciar o projeto após o build
Adicione nos scripts do package.json:
"start": "node dist/main.js"