{
  "name": "@dm-tools/demo",
  "version": "0.1.0",
  "description": "DM-Tools generated GraphQL demo Server",
  "main": "build/server.js",
  "scripts": {
    "ava": "ava --tap 'build/**/*/test.*.js'|tap-summary",
    "ava:coverage": "nyc ava --tap 'build/**/*/test.*.js'|tap-summary",
    "build": "tsc",
    "build:test": "tsc -p ./tsconfig.dev.json",
    "browser": "/usr/bin/google-chrome-stable --new-window || /usr/bin/brave-browser --new-window",
    "clean": "shx rm -rf build",
    "copy:keys": "cp -r keys build/",
    "debug:node": "cross-env PORT=3100 NODE_ENV=development node --inspect-brk build/server.js",
    "debug": "gazeall -V --npms 'clean devbuild debug:node' -w 'src/**/*'",
    "dev": "gazeall -V --npms 'clean format lint devbuild copy:keys devwatch' -w 'src/**/*'",
    "devbuild": "tsc -p ./tsconfig.dev.json",
    "devwatch": "cross-env PORT=3100 NODE_ENV=development node build/server.js",
    "doc": "typedoc --plugin typedoc-plugin-markdown --out docs/typedoc",
    "format": "biome format --write ./src",
    "lint": "biome lint --write ./src",
    "log": "tail -n 20 logs/server.log -f",
    "prebuild": "run-s format clean lint",
    "precommit": "run-s format lint",
    "predebug": "run-s clean devbuild",
    "predoc": "shx rm -rf docs/typedoc && shx mkdir -p docs/typedoc",
    "prepush": "npm run test",
    "prestart": "npm run release",
    "pretest": "run-s clean build:test",
    "release": "run-s clean format lint build copy:keys",
    "start": "cross-env PORT=3100 NODE_ENV=production node build/server.js",
    "test": "gazeall --delay 3000 --npms ava 'build/**/*'",
    "test:coverage": "npm run ava:coverage",
    "test:e2e": "cypress open",
    "test:web": "cross-env NODE_ENV=test browserify 'build/**/*/test.*.js'|tape-run|tap-summary",
    "web": "run-p webdev webwatch",
    "webdev": "gazeall -V -s 'webclean webbuild1 webbuild2 sassbuild' 'src/**/*'",
    "webbuild1": "shx mkdir build",
    "webbuild2": "shx cp -r src/web build/",
    "webwatch": "browser-sync start --config bs-config.js",
    "webrefresh": "browser-sync reload",
    "webclean": "shx rm -rf build",
    "sassbuild": "sass src/web:build/web/css",
    "sig:hup": "kill -1 $(lsof -i :3100  |grep node|cut -d' ' -f5)",
    "sig:term": "kill -15 $(lsof -i :3100|grep node|cut -d' ' -f5)",
    "sig:kill": "kill -9 $(lsof -i :3100 |grep node|cut -d' ' -f5)"
  },
  "keywords": [
    "javascript",
    "js",
    "ts",
    "typescript",
    "nodejs",
    "web",
    "css",
    "sass"
  ],
  "author": "[Fullname] <your-email>",
  "license": "GPL-3.0",
  "repository": {
    "type": "git",
    "url": "https://github.com/<github-user-id>/<project-name>"
  },
  "nyc": {
    "lines": 10,
    "statements": 10,
    "functions": 10,
    "branches": 10,
    "include": [
      "build/**/*.js"
    ],
    "exclude": [
      "build/**/*.spec.js",
      "build/**/test.*.js",
      "build/main.js"
    ],
    "reporter": [
      "text",
      "lcov",
      "text-summary",
      "html"
    ],
    "cache": true,
    "all": true,
    "check-coverage": true
  },
  "devDependencies": {
    "@babel/cli": "^7.27.1",
    "@babel/core": "^7.27.1",
    "@babel/polyfill": "^7.12.1",
    "@babel/preset-env": "^7.27.1",
    "@types/axios": "^0.14.4",
    "@types/better-sqlite3": "^7.6.13",
    "@types/bunyan": "^1.8.11",
    "@types/bunyan-format": "^0.2.9",
    "@types/express": "^5.0.1",
    "@types/jest": "^29.5.14",
    "@types/jsonwebtoken": "^9.0.9",
    "@types/node": "^22.15.3",
    "@types/pg": "^8.11.14",
    "@types/shelljs": "^0.8.15",
    "@typescript-eslint/eslint-plugin": "^8.31.1",
    "@typescript-eslint/parser": "^8.31.1",
    "ava": "^6.3.0",
    "biome": "^0.3.3",
    "browser-sync": "^3.0.4",
    "cross-env": "^7.0.3",
    "cross-var": "^1.1.0",
    "esdoc": "^1.1.0",
    "esdoc-standard-plugin": "^1.0.0",
    "eslint": "^9.26.0",
    "gazeall": "^0.13.13",
    "husky": "^9.1.7",
    "jest": "^29.7.0",
    "npm-run-all": "^4.1.5",
    "nyc": "^17.1.0",
    "sass": "^1.87.0",
    "shx": "^0.4.0",
    "tap-summary": "^4.0.0",
    "tape-run": "^11.0.0",
    "typedoc": "^0.28.3",
    "typedoc-plugin-markdown": "^4.6.3",
    "typescript": "^5.8.3"
  },
  "dependencies": {
    "@koa/cors": "^5.0.0",
    "apollo-server": "^3.13.0",
    "axios": "^1.9.0",
    "bcrypt": "^5.1.1",
    "better-sqlite3": "^11.9.1",
    "bunyan": "^1.8.15",
    "bunyan-format": "^0.2.1",
    "cookie-parser": "^1.4.7",
    "cors": "^2.8.5",
    "express": "^5.1.0",
    "graphql": "^16.11.0",
    "jsonwebtoken": "^9.0.2",
    "koa": "^3.0.0",
    "koa-better-router": "^2.1.1",
    "koa-body": "^6.0.1",
    "koa-router": "^13.0.1",
    "mysql2": "^3.14.1",
    "pg": "^8.15.6"
  }
}
