[Node.js/Express]Memo

Installation

File Structure
Coming soon

Modules

  1. npm init -y
  2. yarn add --dev typescript express @types/express
  3. yarn add --dev ts-node nodemon

Files

  • /src/server.ts
import * as express from 'express';
const app = express();
const port = 8080;

app.get('/', (req, res) => res.send('Hello World!!'));

app.listen(port, () => console.log(`Example app listening on port ${port}`));
  • .prettierrc
{
  "singleQuote": true,
  "jsxSingleQuote": false,
  "trailingComma": "all",
  "arrowParens": "always"
}
{
  "watch": ["src"],
  "ext": "ts",
  "ignore": ["tests/**/*.ts"],
  "exec": "npm run ts-node ./src/server.ts"
}
  • package.json(Only scripts)
"scripts": {
    "start": "node dist/server.js",
    "tsc": "tsc",
    "dev": "nodemon -L",
    "ts-node": "ts-node",
    "lint": "tslint --exclude **/*.d.ts --project . --fix 'src/**/*.ts' 'test/**/*.ts'"
  },
{
  "compilerOptions": {
    "outDir": "./public",
    "sourceMap": true,
    "module": "commonjs",
    "target": "es5",
    "moduleResolution": "node",
    "removeComments": true
  },
  "include": ["./src/**/*"]
}
{
  "defaultSeverity": "error",
  "extends": ["tslint:recommended"],
  "jsRules": {},
  "rules": {
    "quotemark": [true, "single", "jsx-double"],
    "object-literal-sort-keys": false,
    "interface-over-type-literal": false,
    "ordered-imports": false,
    "no-console": false
  },
  "rulesDirectory": []
}

Errors