{
  "name": "image-dataset",
  "version": "1.12.5",
  "description": "Tool to build image dataset: collect, classify, review",
  "keywords": [
    "image-dataset",
    "image-collection",
    "image-classification",
    "cli",
    "typescript",
    "machine-learning",
    "transfer-learning",
    "google-search"
  ],
  "author": {
    "name": "Beeno Tung",
    "email": "aabbcc1241@yahoo.com.hk",
    "url": "https://beeno-tung.surge.sh"
  },
  "license": "BSD-2-Clause",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/beenotung/image-dataset.git"
  },
  "homepage": "https://github.com/beenotung/image-dataset#readme",
  "bugs": {
    "url": "https://github.com/beenotung/image-dataset/issues"
  },
  "main": "dist/main.js",
  "bin": {
    "image-dataset": "bin.js"
  },
  "files": [
    "public",
    "dist"
  ],
  "scripts": {
    "collect": "ts-node main.ts --listFile list.txt",
    "start": "ts-node-dev server.ts",
    "dev": "npm run bundle -- --watch",
    "test": "tsc --noEmit",
    "clean": "rimraf dist",
    "build": "rimraf dist && tsc -p . && rimraf --glob dist/tsconfig.tsbuildinfo dist/migrations/*.d.ts",
    "bundle": "esbuild --bundle client.ts --outfile=public/bundle.js",
    "tsc": "tsc -p .",
    "db:ui": "erd-ui erd.txt",
    "db:setup": "npm run db:migrate",
    "db:dev": "run-s db:migrate db:plan db:update",
    "db:migrate": "knex migrate:latest",
    "db:plan": "auto-migrate db.sqlite3 < erd.txt",
    "db:update": "run-s db:migrate db:gen-proxy",
    "db:gen-proxy": "erd-to-proxy < erd.txt > proxy.ts"
  },
  "dependencies": {
    "@beenotung/tslib": "^24.23.0",
    "@tensorflow/tfjs-node": "^4.22.0",
    "better-sqlite3": "^12.8.0",
    "better-sqlite3-proxy": "^2.11.4",
    "better-sqlite3-schema": "^3.1.10",
    "cast.ts": "^1.19.0",
    "cors": "^2.8.6",
    "data-template": "^1.10.1",
    "dotenv": "^17.3.1",
    "express": "^5.2.1",
    "formidable": "^3.5.4",
    "graceful-playwright": "^1.5.1",
    "heatmap-helpers": "^0.1.1",
    "heatmap-values": "^1.0.4",
    "http-status": "^2.1.0",
    "ionicons": "^8.0.13",
    "knex": "^3.2.6",
    "listening-on": "^2.1.0",
    "npm-init-helper": "^1.6.4",
    "playwright": "^1.58.2",
    "populate-env": "^2.4.3",
    "tensorflow-helpers": "^2.0.1"
  },
  "devDependencies": {
    "@types/better-sqlite3": "^7.6.13",
    "@types/cors": "^2.8.19",
    "@types/express": "^5.0.6",
    "@types/formidable": "^3.5.0",
    "@types/integer": "^4.0.3",
    "@types/node": "^24.12.0",
    "esbuild": "^0.27.4",
    "npm-run-all": "^4.1.5",
    "quick-erd": "^4.34.1",
    "rimraf": "^6.1.3",
    "ts-node": "^10.9.2",
    "ts-node-dev": "^2.0.0",
    "typescript": "^5.9.3"
  },
  "pnpm": {
    "onlyBuiltDependencies": [
      "@tensorflow/tfjs-node",
      "better-sqlite3",
      "core-js",
      "esbuild"
    ]
  }
}
