{ "name": "ttrpg-character-builder", "version": "0.1.0", "description": "Offline meta-builder for TTRPG character system schemas and sheets", "main": "dist/main/index.cjs", "type": "module", "scripts": { "dev": "node scripts/dev.mjs", "build": "node scripts/build.mjs", "typecheck": "tsc -p tsconfig.json --noEmit", "test": "tsx --test app/shared/core.test.ts", "test:presets": "tsx scripts/preset-smoke.mjs", "sync:player": "node scripts/sync-to-player.mjs", "test:e2e": "playwright test", "pack:win": "npm run build && electron-builder --win", "pack:mac": "npm run build && electron-builder --mac", "pack:linux": "npm run build && electron-builder --linux" }, "author": "TTRPG", "license": "UNLICENSED", "dependencies": { "@dnd-kit/core": "^6.3.1", "@dnd-kit/utilities": "^3.2.2", "better-sqlite3": "^11.10.0", "react": "^19.2.5", "react-dom": "^19.2.5", "reactflow": "^11.11.4" }, "devDependencies": { "@playwright/test": "^1.62.0", "@types/better-sqlite3": "^7.6.13", "@types/node": "^25.6.0", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.1", "electron": "^41.2.0", "electron-builder": "^26.8.1", "esbuild": "^0.28.0", "tsx": "^4.21.0", "typescript": "^5.9.3", "vite": "^8.0.8" }, "build": { "appId": "com.ttrpg.characterbuilder", "productName": "TTRPGCharacterBuilder", "directories": { "output": "release", "buildResources": "build" }, "files": [ "dist/**/*", "package.json" ], "extraResources": [ { "from": "presets", "to": "presets" } ], "asar": true, "mac": { "target": [ { "target": "dmg", "arch": ["x64", "arm64"] }, { "target": "zip", "arch": ["x64", "arm64"] } ] }, "win": { "target": [ { "target": "nsis", "arch": ["x64"] }, { "target": "zip", "arch": ["x64"] } ] }, "linux": { "target": [ { "target": "AppImage", "arch": ["x64", "arm64"] } ], "category": "Game" }, "nsis": { "oneClick": false, "allowToChangeInstallationDirectory": true } } }