Starting up the project
mkdir express-ts
cd express-ts
npm init -y
pnpm i express
pnpm i -D typescript ts-node node nodemon @type/node @types/express
edit package.json
{
...
"script": {
"d": "nodemon -e ts --exec ts-node ./src/server.ts",
"dev": "ts-node ./src/server.ts"
}
...
}
# generate tsconfig.json
npx tsc --init
reference below tsconfig.json content
{
"compilerOptions": {
"sourceMap": true,
"target": "es2017",
"outDir": "./dist",
"baseUrl": "./src"
},
"include": [
"src/**/*.ts"
],
"exclude": [
"node_modules"
]
}
mkdir src
cd src
touch server.ts
server.ts
import express from 'express';
const app = express();
app.get('/', (request, response) => {
response.send('Hello world!');
});
app.listen(5001, () => {
console.log('Example app listening on port 5001!');
});
try run it your terminal
pnpm d
# try or open by browser or postman or apifox or other tool
curl http://localhost:50001