{ "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", "nodemailer": "^6.9.4", "reflect-metadata": "0.1.13", "sharp": "0.31.3", "ts-exif-parser": "0.2.2", "ts-node-iptc": "1.0.11", "typeconfig": "2.1.0", "typeorm": "0.3.12", "xml2js": "0.4.23" }, "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" } }