Files
Art-gallery/package.json
T
Danila KhodjaefandCursor 2edf577faf Add dev/prod environments with TrueNAS Docker production deploy.
Split PostgreSQL into gallery_dev and gallery_prod, add Docker/Gitea deploy tooling,
SMB image sync, pgAdmin split script, dev:web on Keenetic :5173, and operator docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 15:15:19 +03:00

66 lines
3.4 KiB
JSON

{
"name": "gallery",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"migrate": "node server/migrate.js",
"migrate:thumbnails": "node -e \"require('./server/db').query(require('fs').readFileSync('./db/migrate-thumbnails.sql','utf8')).then(()=>{console.log('OK');process.exit(0);}).catch(e=>{console.error(e);process.exit(1);})\"",
"seed": "node scripts/seed-wikipedia.js",
"fetch-images": "node scripts/fetch-missing-images.js",
"search-missing-paintings": "node scripts/fetch-missing-images.js",
"fetch-artist-images": "node scripts/fetch-artist-images.js",
"fetch-artist-bios": "node scripts/fetch-artist-bios.js",
"sync-image-paths": "node scripts/sync-image-paths.js",
"regenerate-thumbnails": "node scripts/regenerate-thumbnails.js",
"audit-painting-images": "node scripts/audit-painting-images.js",
"expand-catalog": "node scripts/expand-paintings.js",
"update-influences": "node scripts/update-influences.js",
"migrate:influence-sources": "node scripts/migrate-influence-sources.js",
"migrate:checkup-flags": "node scripts/migrate-checkup-flags.js",
"migrate:artist-checkup-flags": "node scripts/migrate-artist-checkup-flags.js",
"migrate:painting-annotations": "node scripts/migrate-painting-annotations.js",
"migrate:artist-palette": "node scripts/migrate-artist-palette.js",
"import-painter-palette": "node scripts/import-painter-palette.js",
"analyze-painter-palette": "node scripts/analyze-painter-palette.js",
"export-paintings": "node scripts/export-paintings-csv.js",
"update-painting-annotations": "node scripts/update-painting-annotations.js",
"find-duplicates": "node scripts/find-duplicate-paintings.js",
"audit-influence-duplicates": "node scripts/audit-influence-duplicates.js",
"discover-influences": "node scripts/update-influences.js --discover-only",
"build": "npm run build --prefix client",
"start": "node server/index.js",
"start:prod": "npm run build && node server/index.js",
"server": "node server/index.js",
"dev:web": "node scripts/dev-web.js",
"dev:server": "nodemon server/index.js",
"dev:client": "npm run dev --prefix client",
"docker:publish": "powershell -NoProfile -ExecutionPolicy Bypass -File infra/docker/build-push-lan.ps1",
"docker:publish:push-only": "powershell -NoProfile -ExecutionPolicy Bypass -File infra/docker/build-push-lan.ps1 -SkipBuild",
"db:split-databases": "node scripts/split-dev-prod-databases.js",
"db:sync-from-prod": "node scripts/sync-prod-to-dev.js",
"db:backup": "node scripts/backup-db-data.js",
"db:backup:prod": "node scripts/backup-db-data.js --prod",
"db:restore": "node scripts/restore-db-data.js",
"db:restore:prod": "node scripts/restore-db-data.js --prod",
"images:sync-to-prod": "powershell -NoProfile -ExecutionPolicy Bypass -File infra/scripts/sync-images-to-prod.ps1",
"images:sync-from-prod": "powershell -NoProfile -ExecutionPolicy Bypass -File infra/scripts/sync-images-from-prod.ps1",
"dev": "node server/index.js",
"setup": "node server/migrate.js && node scripts/seed-wikipedia.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"type": "commonjs",
"dependencies": {
"cors": "^2.8.6",
"dotenv": "^17.4.2",
"express": "^5.2.1",
"pg": "^8.21.0",
"sharp": "^0.35.1"
},
"devDependencies": {
"nodemon": "^3.1.14"
}
}