forked from jsnbuchanan/crowd-funder-for-time-pwa
Replace chained npm commands with single build-electron.sh script supporting multiple build modes (dev/test/prod), platforms (windows/mac/linux), and package types (appimage/deb/dmg). Add platform validation to prevent cross-platform build issues and integrate cleaning functionality. - Replace 15+ chained npm scripts with single modular build script - Add platform detection and validation with early failure on mismatch - Support environment-specific builds (development/test/production) - Add comprehensive documentation in docs/electron-build-patterns.md - Update BUILDING.md with new build patterns and examples - Remove legacy electron:build:* scripts and consolidate under build:electron:* - Add clean:electron script integrated into build process - Improve error handling and user feedback throughout build process This refactoring follows DRY principles, eliminates command chaining, and provides a more maintainable and user-friendly build system.
59 lines
2.2 KiB
JSON
59 lines
2.2 KiB
JSON
{
|
|
"name": "TimeSafari",
|
|
"version": "1.0.0",
|
|
"description": "Time Safari - Community building through gifts, gratitude, and collaborative projects",
|
|
"homepage": "https://timesafari.app",
|
|
"author": {
|
|
"name": "Matthew Raymer",
|
|
"email": "matthew@timesafari.app"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/trentlarson/crowd-master"
|
|
},
|
|
"license": "MIT",
|
|
"main": "build/src/index.js",
|
|
"scripts": {
|
|
"build": "tsc && electron-rebuild",
|
|
"electron:start-live": "node ./live-runner.js",
|
|
"electron:start": "npm run build && electron --inspect=5858 ./",
|
|
"electron:pack": "npm run build && electron-builder build --dir -c ./electron-builder.config.json",
|
|
"electron:make": "npm run build && electron-builder build -c ./electron-builder.config.json -p always",
|
|
"build:windows": "npm run build && electron-builder build --win -c ./electron-builder.config.json",
|
|
"build:mac": "npm run build && electron-builder build --mac -c ./electron-builder.config.json",
|
|
"build:linux": "npm run build && electron-builder build --linux -c ./electron-builder.config.json",
|
|
"build:appimage": "npm run build && electron-builder build --linux AppImage -c ./electron-builder.config.json",
|
|
"build:deb": "npm run build && electron-builder build --linux deb -c ./electron-builder.config.json",
|
|
"build:dmg": "npm run build && electron-builder build --mac dmg -c ./electron-builder.config.json"
|
|
},
|
|
"dependencies": {
|
|
"@capacitor-community/electron": "^5.0.0",
|
|
"@capacitor-community/sqlite": "^6.0.2",
|
|
"better-sqlite3-multiple-ciphers": "^12.1.1",
|
|
"chokidar": "~3.5.3",
|
|
"crypto": "^1.0.1",
|
|
"crypto-js": "^4.2.0",
|
|
"electron-is-dev": "~2.0.0",
|
|
"electron-json-storage": "^4.6.0",
|
|
"electron-serve": "~1.1.0",
|
|
"electron-unhandled": "~4.0.1",
|
|
"electron-updater": "^5.3.0",
|
|
"electron-window-state": "^5.0.3",
|
|
"jszip": "^3.10.1",
|
|
"node-fetch": "^2.6.7"
|
|
},
|
|
"devDependencies": {
|
|
"@types/better-sqlite3": "^7.6.13",
|
|
"@types/crypto-js": "^4.2.2",
|
|
"@types/electron-json-storage": "^4.5.4",
|
|
"electron": "^26.2.2",
|
|
"electron-builder": "~23.6.0",
|
|
"electron-rebuild": "^3.2.9",
|
|
"typescript": "~5.2.2"
|
|
},
|
|
"keywords": [
|
|
"capacitor",
|
|
"electron"
|
|
]
|
|
}
|