{
  "name": "carthorse",
  "version": "2.3.0",
  "description": "A geospatial trail data processing pipeline for building 3D trail databases with elevation data",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "logo": "carthorse-logo.png",
  "scripts": {
    "test": "jest",
    "test:quick": "CARTHORSE_TEST_LIMIT=10 jest --runInBand",
    "test:routing-quality": "npm test -- src/__tests__/routing-graph-quality.test.ts",
    "validate-routing": "./scripts/validate-routing-quality.sh",
    "build": "tsc",
    "start": "node dist/index.js",
    "dev": "ts-node src/index.ts",
    "lint": "eslint src/**/*.ts",
    "format": "prettier --write src/**/*.ts",
    "clean": "rm -rf dist",
    "prebuild": "npm run clean",
    "postbuild": "echo 'Build completed successfully!'",
    "test:coverage": "jest --coverage",
    "test:watch": "jest --watch",
    "test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
    "export": "npx ts-node src/cli/export.ts",
    "export:intersection": "npx ts-node src/cli/intersection-export.ts",
    "export:pgrouting": "npx ts-node src/cli/pgrouting-export.ts",
    "backup": "npx ts-node src/cli/backup.ts",
    "backup:orchestrator": "npx ts-node src/orchestrator/CarthorseOrchestrator.ts backup",
    "test:orchestrator": "npx ts-node src/orchestrator/CarthorseOrchestrator.ts test",
    "validate:region": "npx ts-node src/cli/region-readiness.ts",
    "validate:data": "npx ts-node src/cli/validate.ts",
    "drop:schema": "npx ts-node src/cli/drop-schema.ts",
    "test:deadlock-detection": "npx ts-node src/cli/test-deadlock-detection.ts",
    "setup:test-db": "./scripts/setup-test-db.js",
    "cleanup:test-db": "./scripts/cleanup-test-database.sh",
    "test:yaml-config": "npm test -- src/__tests__/yaml-config-dynamic-values.test.ts",
    "test:sql-config": "npm test -- src/__tests__/sql-config-functions.test.ts",
    "release": "node scripts/release.js"
  },
  "keywords": [
    "geospatial",
    "trails",
    "elevation",
    "postgis",
    "osm",
    "gpx",
    "spatialite",
    "3d-geometry",
    "trail-mapping",
    "outdoor-recreation"
  ],
  "author": "Gainiac Contributors <gainiac-carthorse@proton.me>",
  "license": "GPL-3.0-or-later",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/carthorse/carthorse.git"
  },
  "bugs": {
    "url": "https://github.com/carthorse/carthorse/issues"
  },
  "homepage": "https://github.com/carthorse/carthorse#readme",
  "engines": {
    "node": ">=18.0.0"
  },
  "dependencies": {
    "@types/js-yaml": "^4.0.9",
    "better-sqlite3": "^9.0.0",
    "chalk": "^4.1.2",
    "commander": "^11.0.0",
    "dotenv": "^16.3.0",
    "fs-extra": "^11.1.0",
    "geotiff": "^2.1.4-beta.0",
    "glob": "^10.3.0",
    "js-yaml": "^4.1.0",
    "node-fetch": "^3.3.2",
    "ora": "^7.0.0",
    "pg": "^8.16.3",
    "sqlite3": "^5.1.7",
    "uuid": "^9.0.0"
  },
  "devDependencies": {
    "@types/better-sqlite3": "^7.6.13",
    "@types/fs-extra": "^11.0.0",
    "@types/glob": "^8.1.0",
    "@types/jest": "^29.5.14",
    "@types/node": "^20.0.0",
    "@types/pg": "^8.10.0",
    "@types/uuid": "^9.0.0",
    "@typescript-eslint/eslint-plugin": "^6.0.0",
    "@typescript-eslint/parser": "^6.0.0",
    "dotenv-cli": "^9.0.0",
    "eslint": "^8.0.0",
    "install": "^0.13.0",
    "jest": "^29.7.0",
    "npm": "^11.4.2",
    "prettier": "^3.0.0",
    "ts-jest": "^29.4.0",
    "ts-node": "^10.9.2",
    "typescript": "^5.8.3"
  },
  "files": [
    "dist/",
    "sql/README.md",
    "sql/carthorse-current-orchestrator-functions.sql",
    "sql/generate-test-route-recommendations.sql",
    "sql/migrations/**",
    "sql/organized/**",
    "scripts/copy-sql-files.js",
    "carthorse-logo.png",
    "README.md",
    "LICENSE"
  ],
  "bin": {
    "carthorse": "dist/src/cli/export.js",
    "carthorse-readiness": "dist/src/cli/region-readiness.js"
  }
}
