{
  "name": "pigallery2",
  "version": "1.9.6-nightly",
  "description": "This is a photo gallery optimised for running low resource servers (especially on raspberry pi)",
  "author": "Patrik J. Braun",
  "homepage": "https://github.com/bpatrik/PiGallery2",
  "license": "MIT",
  "main": "./src/backend/index.js",
  "bin": "./src/backend/index.js",
  "scripts": {
    "build": "tsc && gulp build-prod",
    "build-en": "tsc && gulp build-prod --languages=en",
    "create-release": "gulp create-release",
    "build-backend": "tsc",
    "pretest": "tsc",
    "test": "ng test  && nyc mocha --recursive test",
    "test-backend": "tsc && mocha --recursive test",
    "coverage": "nyc report --reporter=text-lcov | coveralls",
    "start": "node ./src/backend/index",
    "run-dev": "ng build  --configuration=dev",
    "build-stats": "ng build  --stats-json",
    "analyze": "webpack-bundle-analyzer dist/en/stats.json",
    "merge-new-translation": "gulp merge-new-translation",
    "generate-man": "gulp generate-man",
    "lint": "ng lint"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/bpatrik/PiGallery2.git"
  },
  "bugs": {
    "url": "https://github.com/bpatrik/PiGallery2/issues"
  },
  "dependencies": {
    "archiver": "5.3.1",
    "bcrypt": "5.1.0",
    "better-sqlite3": "8.2.0",
    "cookie-parser": "1.4.6",
    "cookie-session": "2.0.0",
    "csurf": "1.11.0",
    "ejs": "3.1.8",
    "exifreader": "4.10.0",
    "express": "4.18.2",
    "express-unless": "2.1.3",
    "fluent-ffmpeg": "2.1.2",
    "image-size": "1.0.2",
    "locale": "0.1.0",
    "node-geocoder": "4.2.0",
    "reflect-metadata": "0.1.13",
    "sharp": "0.31.3",
    "ts-exif-parser": "0.2.2",
    "ts-node-iptc": "1.0.11",
    "typeconfig": "2.0.38",
    "xml2js": "0.4.23",
    "typeorm": "0.3.12"
  },
  "devDependencies": {
    "@angular-builders/custom-webpack": "15.0.0",
    "@angular-eslint/builder": "15.2.1",
    "@angular-eslint/eslint-plugin": "15.2.1",
    "@angular-eslint/eslint-plugin-template": "15.2.1",
    "@angular-eslint/schematics": "15.2.1",
    "@angular-eslint/template-parser": "15.2.1",
    "@angular/animations": "15.2.2",
    "@angular/cli": "15.2.2",
    "@angular/common": "15.2.2",
    "@angular/compiler": "15.2.2",
    "@angular/compiler-cli": "15.2.2",
    "@angular/core": "15.2.2",
    "@angular/forms": "15.2.2",
    "@angular/language-service": "15.2.2",
    "@angular/localize": "15.2.2",
    "@angular/platform-browser": "15.2.2",
    "@angular/platform-browser-dynamic": "15.2.2",
    "@angular/router": "15.2.2",
    "@asymmetrik/ngx-leaflet": "15.0.1",
    "@asymmetrik/ngx-leaflet-markercluster": "15.0.0",
    "@ngx-loading-bar/core": "6.0.2",
    "@types/archiver": "5.3.1",
    "@types/bcrypt": "5.0.0",
    "@types/bcryptjs": "2.4.2",
    "@types/chai": "4.3.4",
    "@types/cookie-parser": "1.4.3",
    "@types/cookie-session": "2.0.44",
    "@types/csurf": "1.11.2",
    "@types/ejs": "3.1.2",
    "@types/express": "4.17.17",
    "@types/express-jwt": "6.0.4",
    "@types/fluent-ffmpeg": "2.1.21",
    "@types/gulp": "4.0.10",
    "@types/gulp-zip": "4.0.2",
    "@types/jasmine": "4.3.1",
    "@types/jsonwebtoken": "9.0.1",
    "@types/leaflet": "1.9.1",
    "@types/leaflet.markercluster": "1.5.1",
    "@types/node": "18.15.0",
    "@types/node-geocoder": "4.2.0",
    "@types/sharp": "0.31.1",
    "@types/xml2js": "0.4.11",
    "@typescript-eslint/eslint-plugin": "5.54.1",
    "@typescript-eslint/parser": "5.54.1",
    "bootstrap": "5.3.0-alpha1",
    "chai": "4.3.7",
    "chai-http": "4.3.0",
    "codelyzer": "6.0.2",
    "core-js": "3.29.0",
    "coveralls": "3.1.1",
    "deep-equal-in-any-order": "2.0.5",
    "ejs-loader": "0.5.0",
    "eslint": "8.36.0",
    "gulp": "4.0.2",
    "gulp-json-editor": "2.5.6",
    "gulp-typescript": "5.0.1",
    "gulp-zip": "5.1.0",
    "hammerjs": "2.0.8",
    "intl": "1.2.5",
    "jasmine-core": "4.5.0",
    "karma": "6.4.1",
    "karma-chrome-launcher": "3.1.1",
    "karma-coverage": "2.2.0",
    "karma-jasmine": "5.1.0",
    "karma-jasmine-html-reporter": "2.0.0",
    "leaflet": "1.9.3",
    "leaflet.markercluster": "1.5.3",
    "mocha": "10.2.0",
    "ngx-bootstrap": "10.2.0",
    "ngx-clipboard": "15.1.0",
    "ngx-cookie-service": "15.0.0",
    "ngx-device-detector": "5.0.1",
    "ngx-markdown": "15.1.1",
    "ngx-toastr": "16.1.0",
    "nyc": "15.1.0",
    "open-iconic": "1.1.1",
    "rxjs": "7.8.0",
    "ts-helpers": "1.1.2",
    "ts-node": "10.9.1",
    "webpack-bundle-analyzer": "4.8.0",
    "xlf-google-translate": "1.0.0-beta.23",
    "zone.js": "0.12.0"
  },
  "optionalDependencies": {
    "ffmpeg-static": "5.1.0",
    "ffprobe-static": "3.1.0",
    "mysql": "2.18.1"
  },
  "engines": {
    "node": ">=18 <19.0"
  }
}