{ "name": "inkweld", "version": "1.0.0-beta.7", "description": "Inkweld - Collaborative creative writing platform", "author": "bobbyquantum", "license": "MIT", "private": true, "workspaces": [ "packages/*" ], "scripts": { "postinstall": "INKWELD_BUN_POSTINSTALL=1 bun install --save-text-lockfile --cwd frontend && INKWELD_BUN_POSTINSTALL=1 bun install --cwd backend && INKWELD_BUN_POSTINSTALL=1 bun install --cwd docs/site", "dev": "concurrently \"npm run dev:backend\" \"npm run dev:frontend\"", "dev:frontend": "cd frontend && bun run start", "dev:backend": "cd backend && bun run dev", "dev:all": "concurrently \"npm run dev:backend\" \"npm run dev:frontend\" \"npm run docs\"", "build": "npm run build:frontend && cd backend && bun run generate:frontend-imports && cd .. && npm run build:backend", "build:frontend": "cd frontend && bun run clean && bun run build", "build:backend": "cd backend && bun run build", "build:prod": "cd frontend && bun run clean && bun run build && git rev-parse --short HEAD > dist/browser/assets/version.txt && bun run compress-wasm && cd ../backend && bun run generate:frontend-imports && bun run build", "build:preview": "cd frontend && bun run clean && bun run ng build --configuration=preview && node scripts/copy-licenses.mjs && bun scripts/write-sw-app-data.ts && git rev-parse --short HEAD > dist/browser/assets/version.txt && bun run compress-wasm && cd ../backend && bun run generate:frontend-imports && bun run build", "build:cloudflare": "cd frontend && bun run clean && bun run ng build --configuration=cloudflare && node scripts/copy-licenses.mjs && bun scripts/write-sw-app-data.ts && git rev-parse --short HEAD > dist/browser/assets/version.txt && bun run compress-wasm && cd ../backend && bun run generate:frontend-imports && bun run build", "build:binary": "cd backend && bun run build:binary:full", "build:image": "docker build -t inkweld:latest .", "build:image:prod": "docker build -t inkweld:prod .", "test": "npm run test:packages && npm run test:scripts && npm run test:frontend && npm run test:backend", "test:scripts": "bun test scripts", "test:packages": "cd packages/inkweld-prosemirror && bun run test && cd ../inkweld-presence && bun run test && cd ../inkweld-async && bun run test && cd ../inkweld-canvas && bun run test && cd ../inkweld-project-library && bun run test", "test:packages:coverage": "cd packages/inkweld-prosemirror && bun run test:coverage && cd ../inkweld-presence && bun run test:coverage && cd ../inkweld-async && bun run test:coverage && cd ../inkweld-canvas && bun run test:coverage && cd ../inkweld-project-library && bun run test:coverage", "test:frontend": "cd frontend && npm test", "test:frontend:coverage": "cd frontend && npm run test:coverage", "test:backend": "cd backend && bun test", "test:watch": "cd frontend && npm run test:watch", "test:coverage": "npm run test:packages:coverage && npm run test:frontend:coverage && cd backend && bun run test:coverage", "e2e": "cd frontend && npm run e2e", "e2e:ui": "cd frontend && npm run e2e:ui", "e2e:ci": "cd frontend && npm run e2e:ci", "lint": "npm run lint:frontend && npm run lint:backend", "lint:frontend": "cd frontend && npm run lint", "lint:backend": "cd backend && bun run lint", "lint:fix": "npm run lint:fix:frontend && npm run lint:fix:backend", "lint:fix:frontend": "cd frontend && npm run lint:fix", "lint:fix:backend": "cd backend && bun run lint:fix", "format": "npm run format:frontend && npm run format:backend && npm run format:docs", "format:frontend": "cd frontend && bun fmt \"src/**/*.{ts,html,scss}\" \"e2e/**/*.ts\" \".storybook/**/*.ts\"", "format:backend": "cd backend && bun run format", "format:docs": "cd docs/site && bun run format", "format:check": "npm run format:check:frontend && npm run format:check:backend && npm run format:check:docs", "format:check:frontend": "cd frontend && bun fmt --check \"src/**/*.{ts,html,scss}\" \"e2e/**/*.ts\" \".storybook/**/*.ts\"", "format:check:backend": "cd backend && bun run format:check", "format:check:docs": "cd docs/site && bun run format:check", "typecheck": "npm run typecheck:packages && npm run typecheck:frontend && npm run typecheck:backend", "typecheck:packages": "bun check -p packages/inkweld-async && bun check -p packages/inkweld-canvas && bun check -p packages/inkweld-presence && bun check -p packages/inkweld-project-library && bun check -p packages/inkweld-prosemirror", "typecheck:frontend": "cd frontend && bun check -b", "typecheck:backend": "cd backend && bun run typecheck", "verify": "node scripts/verify.js", "verify:e2e": "VERIFY_MODE=e2e node scripts/verify.js", "verify:full": "VERIFY_MODE=full node scripts/verify.js", "verify:frontend": "npm run format:check:frontend && cd frontend && npm run lint && npm test && npm run e2e:ci", "verify:backend": "npm run format:check:backend && cd backend && bun run lint && bun test", "verify:docs": "cd docs/site && bun run build", "verify:docs:lite": "cd docs/site && bun run build:no-screenshots", "docs": "cd docs/site && bun start", "docs:build": "cd docs/site && bun run build", "docs:serve": "cd docs/site && bun run serve", "docs:gen-api": "cd docs/site && bun run clean-api-docs && bun run gen-api-docs", "docs:update-api": "cd backend && bun run generate:openapi && cd ../docs/site && bun run clean-api-docs && bun run gen-api-docs", "generate:openapi": "cd backend && bun run generate:openapi", "generate:client": "cd backend && bun run generate:angular-client", "generate:all": "npm run generate:openapi && npm run generate:client && npm run docs:gen-api", "deploy": "bun run scripts/deploy-wizard.ts", "docker:up": "docker compose up -d", "docker:down": "docker compose down", "docker:logs": "docker compose logs -f", "docker:build": "docker compose build", "docker:prod": "docker compose -f compose.yaml up -d --build", "cloudflare:setup": "cd backend && bun run scripts/setup-cloudflare.ts", "cloudflare:undeploy": "cd backend && bun run scripts/undeploy-cloudflare.ts", "cloudflare:preview:deploy": "npm run build:preview && cd frontend && node ../scripts/cloudflare-deploy.js inkweld-frontend-preview dist/browser --retries 3 && cd ../backend && bun run db:migrate:preview && bun run wrangler deploy --env preview", "cloudflare:preview:migrate": "cd backend && bun run db:migrate:preview", "cloudflare:preview:logs": "cd backend && bun run wrangler tail --env preview", "cloudflare:prod:deploy": "npm run build:cloudflare && cd frontend && node ../scripts/cloudflare-deploy.js inkweld-frontend dist/browser --retries 3 && cd ../backend && bun run db:migrate:prod && bun run wrangler deploy --env production", "cloudflare:prod:migrate": "cd backend && bun run db:migrate:prod", "cloudflare:prod:logs": "cd backend && bun run wrangler tail --env production", "clean": "npm run clean:frontend && npm run clean:backend && npm run clean:docs", "clean:frontend": "cd frontend && bun run clean && rm -rf node_modules/.cache .angular", "clean:backend": "cd backend && rm -rf dist coverage", "clean:docs": "cd docs/site && bun run clear && rm -rf build", "clean:all": "npm run clean && rm -rf node_modules frontend/node_modules backend/node_modules docs/site/node_modules", "prepare": "husky" }, "devDependencies": { "@commitlint/cli": "^21.0.0", "@commitlint/config-conventional": "^21.0.0", "concurrently": "^10.0.0", "husky": "^9.1.7", "lint-staged": "^17.0.0" }, "lint-staged": { "frontend/src/!(api-client)/**/*.{ts,html,scss}": [ "bun fmt" ], "frontend/e2e/**/*.ts": [ "bun fmt" ], "frontend/.storybook/**/*.ts": [ "bun fmt" ], "backend/{src,test,scripts}/**/*.ts": [ "bun fmt", "./backend/node_modules/.bin/eslint --fix --no-warn-ignored" ], "docs/site/**/*.{js,jsx,ts,tsx,md,mdx,json,css}": [ "bun fmt" ] }, "engines": { "node": ">=22.0.0" }, "packageManager": "bun@1.4.4" }