Nesse artigo vou explicar como iniciar um projeto com express utilizando Typescript de forma fácil.
O que é o Express
O Express é um Framework rápido e um dos mais utilizados em conjunto com o Node.js, facilitando no desenvolvimento de aplicações back-end e até, em conjunto com sistemas de templates, aplicações full-stack. Escrito em JavaScript.
Muito popular tanto em grandes empresas quanto na comunidade, o Express facilita a criação de aplicações utilizando o Node em conjunto com o JavaScript, tornando este ecossistema ainda mais poderoso.
Criando o projeto
Iniciando um projeto com NodeJS
Para começar vamos criar um diretório e então iniciamos o projeto:
mkdir express-typescript && cd express-typescript
npm init -y
# ou:
yarn init -y
Perceba que agora temos um package.json
no diretório é nele que fica todas as configurações do seu projeto e as dependências, agora ele deve ter algo parecido com:
{
"name": "express-typescript",
"version": "1.0.0",
"main": "index.js",
"license": "MIT"
}
Instalando dependências
Para rodar nosso projeto vai precisar de algumas dependências, para isso vamos instalá-las com:
npm install express && npm install --save-dev @types/express typescript
# ou:
yarn add express && yarn add -D @types/express typescript
Com esses comando instalamos o express que será nosso servidor juntamente com as definições de tipos para utilizarmos com o TypeScript.
Iniciado o typescript
Para iniciar o Typescript basta digitar:
tsc --init
# ou se usou yarn:
yarn tsc --init
Esse comando criou um arquivo de configuração chamado tsconfig.json
.
Antes de criarmos qualquer arquivo vamos criar duas pastas na raiz do projeto, a dist
onde ficará nosso projeto compilado em javascript e src
onde ficará nosso código em typescript.
dentro da pasta src
crie o arquivo server.ts
e cole o código abaixo:
import express from "express";
import { Router, Request, Response } from "express";
const app = express();
const route = Router();
const PORT = 3333;
app.use(express.json());
route.get("/", (request: Request, response: Response) => {
response.json({ message: "hello world with Typescript" });
});
app.use(route);
app.listen(PORT, () => `Server running on port ${PORT}!`);
TypeScript é um super set pra o JavaScript, no começo pode parecer mais difícil mas ele nos ajudar a cometer menos erros.
Editando tsconfig.json
Atribua a pasta Dist ao outDir e pasta src ao rootDir, para isso edite o arquivo tsconfig.json
presente na raiz do projeto.
{
"outDir": "./dist",
"rootDir": "./src"
}
Já podemos rodar o projeto com:
npx tsc
#ou
yarn tsc
O código em javascript será gerado na pasta dist
.
Isso quer dizer que já estamos com o Typescript configurado.
Rodando a aplicação
Para rodar aplicação enquanto estamos desenvolvendo vamos instalar um nova dependência que irá escutar nossas alterações e reiniciar automaticamente, basta instalar:
npm install --save-dev ts-node-dev
#ou
yarn add -D ts-node-dev
Esse pacote irá escutar as alterações dos arquivos Typescript e reiniciar o serviço automaticamente.
Depois de instalado vamos ao nosso package.json
e adicionaremos essas propriedades .
"scripts": {
"dev": "ts-node-dev --inspect --transpile-only --ignore-watch node_modules src/server.ts",
"build": "tsc"
},
o script dev
esta irá escutar as alterações que fizermos no código e reiniciar automaticamente caso seja necessário, também configuramos para ignorar a pasta node_modules, não queremos que ele escute ela.
O script build
gera nossa aplicação TypeScript para JavaScript no diretório dist.
Agora é só executar:
npm run dev
#ou
yarn dev
Abra seu navegador e vá em http://localhost:3333 e veja seu projeto rodando.
No próximo artigo irei criar as rotas e configurar um banco de dados.