173 lines
6.7 KiB
JSON
173 lines
6.7 KiB
JSON
{
|
|
"name": "@aitu/source",
|
|
"version": "0.6.9",
|
|
"license": "MIT",
|
|
"packageManager": "pnpm@10.21.0",
|
|
"description": "Opentu - An open-source whiteboard tool with AI-powered image/video creation, mind mapping, flowcharts, and freehand drawing",
|
|
"homepage": "https://opentu.ai",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/ljquan/aitu.git"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/ljquan/aitu/issues"
|
|
},
|
|
"keywords": [
|
|
"whiteboard",
|
|
"mindmap",
|
|
"flowchart",
|
|
"drawing",
|
|
"AI",
|
|
"collaboration",
|
|
"visualization"
|
|
],
|
|
"author": "ljquan",
|
|
"scripts": {
|
|
"start": "nx serve web",
|
|
"build": "node scripts/update-version.js && nx run-many -t=build",
|
|
"build:web": "node scripts/update-version.js && nx build web",
|
|
"preview": "npx serve dist/apps/web -l 7288",
|
|
"preview:watch": "concurrently -k \"cd apps/web && NODE_OPTIONS='--max-old-space-size=8192' npx vite build --watch\" \"npx wait-on dist/apps/web/index.html && npx serve dist/apps/web -l 7288\"",
|
|
"package": "npm run build && node scripts/create-deploy-package.js",
|
|
"typecheck": "nx run-many -t=typecheck",
|
|
"lint": "nx run-many -t=lint",
|
|
"check": "pnpm typecheck && pnpm lint",
|
|
"test": "nx run-many -t=test",
|
|
"e2e": "nx e2e web-e2e",
|
|
"e2e:smoke": "nx e2e web-e2e -- --project=smoke",
|
|
"e2e:visual": "nx e2e web-e2e -- --project=visual",
|
|
"e2e:visual:update": "nx e2e web-e2e -- --project=visual --update-snapshots",
|
|
"e2e:visual:report": "npx playwright show-report apps/web-e2e/playwright-report",
|
|
"e2e:features": "nx e2e web-e2e -- --project=chromium",
|
|
"e2e:manual": "nx e2e web-e2e -- --project=manual",
|
|
"manual:screenshots": "cd apps/web-e2e && CI= npx playwright test --project=manual",
|
|
"manual:build": "npx ts-node --compiler-options '{\"module\":\"commonjs\",\"esModuleInterop\":true}' scripts/generate-manual.ts",
|
|
"manual:update": "pnpm manual:screenshots && pnpm manual:build",
|
|
"manual:dev": "pnpm manual:update",
|
|
"manual:record": "cd apps/web-e2e && npx playwright codegen http://localhost:7200",
|
|
"manual:video": "cd apps/web-e2e && CI= npx playwright test --project=manual-video -g 'GIF 动图录制'",
|
|
"manual:gif": "pnpm manual:video && node scripts/video-to-gif.js && pnpm manual:build",
|
|
"manual:gif:mindmap": "cd apps/web-e2e && CI= npx playwright test --project=manual-video -g '思维导图创建演示' && node scripts/video-to-gif.js --test 思维导图 --trim 2.4 && pnpm manual:build",
|
|
"manual:video2gif": "node scripts/video-to-gif.js",
|
|
"size": "size-limit",
|
|
"size:why": "size-limit --why",
|
|
"version:patch": "node scripts/safe-version-bump.js patch",
|
|
"version:minor": "node scripts/safe-version-bump.js minor",
|
|
"version:major": "node scripts/safe-version-bump.js major",
|
|
"release:skip": "node scripts/deploy-hybrid.js --skip-build --skip-e2e --skip-npm --skip-manual",
|
|
"release": "node scripts/deploy-hybrid.js --skip-e2e --skip-manual",
|
|
"release:minor": "npm run version:minor && node scripts/deploy-hybrid.js",
|
|
"release:major": "npm run version:major && node scripts/deploy-hybrid.js",
|
|
"release:retry": "node scripts/deploy-hybrid.js --skip-e2e --skip-manual",
|
|
"release:force-bump": "npm run version:patch && node scripts/deploy-hybrid.js --skip-e2e",
|
|
"release:dry": "node scripts/deploy-hybrid.js --dry-run",
|
|
"pub": "npm run build && node scripts/publish.js",
|
|
"npm:publish": "node scripts/publish-npm.js",
|
|
"npm:publish:dry": "node scripts/publish-npm.js --dry-run",
|
|
"npm:publish:skip-build": "node scripts/publish-npm.js --skip-build",
|
|
"deploy:upload-script": "node scripts/upload-deploy-script.js",
|
|
"deploy:upload": "node scripts/upload-and-deploy.js",
|
|
"deploy:nginx": "node scripts/upload-nginx-config.js"
|
|
},
|
|
"private": true,
|
|
"dependencies": {
|
|
"@floating-ui/react": "^0.26.24",
|
|
"@llamaindex/chat-ui": "^0.6.1",
|
|
"@plait-board/markdown-to-drawnix": "^0.0.6",
|
|
"@plait-board/mermaid-to-drawnix": "^0.0.7",
|
|
"@plait/common": "^0.84.0",
|
|
"@plait/core": "^0.84.0",
|
|
"@plait/draw": "^0.84.0",
|
|
"@plait/layouts": "^0.84.0",
|
|
"@plait/mind": "^0.84.0",
|
|
"@plait/text-plugins": "^0.84.0",
|
|
"@sentry/react": "^10.33.0",
|
|
"@tanstack/react-virtual": "^3.13.13",
|
|
"ahooks": "^3.8.0",
|
|
"browser-fs-access": "^0.35.0",
|
|
"classnames": "^2.5.1",
|
|
"clipper-lib": "^6.4.2",
|
|
"is-hotkey": "^0.2.0",
|
|
"jszip": "^3.10.1",
|
|
"localforage": "^1.10.0",
|
|
"lucide-react": "^0.562.0",
|
|
"mermaid": "^11.12.2",
|
|
"mobile-detect": "^1.4.5",
|
|
"open-color": "^1.9.1",
|
|
"postmessage-duplex": "^1.2.0",
|
|
"react": "18.3.1",
|
|
"react-dom": "18.3.1",
|
|
"roughjs": "^4.6.6",
|
|
"rxjs": "~7.8.0",
|
|
"slate": "^0.116.0",
|
|
"slate-dom": "^0.116.0",
|
|
"slate-history": "^0.115.0",
|
|
"slate-react": "^0.116.0",
|
|
"tdesign-icons-react": "^0.5.1",
|
|
"tdesign-react": "^1.14.5",
|
|
"tslib": "^2.3.0",
|
|
"viewerjs": "^1.11.7",
|
|
"web-vitals": "^5.1.0",
|
|
"winbox": "^0.2.82",
|
|
"xlsx": "^0.18.5"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.14.5",
|
|
"@babel/preset-react": "^7.14.5",
|
|
"@mdx-js/mdx": "^3.1.1",
|
|
"@nx/cypress": "19.3.0",
|
|
"@nx/devkit": "19.3.0",
|
|
"@nx/eslint": "19.3.0",
|
|
"@nx/eslint-plugin": "19.3.0",
|
|
"@nx/js": "19.3.0",
|
|
"@nx/playwright": "19.3.0",
|
|
"@nx/react": "19.3.0",
|
|
"@nx/vite": "19.3.0",
|
|
"@nx/web": "19.3.0",
|
|
"@nx/workspace": "19.3.0",
|
|
"@playwright/test": "^1.36.0",
|
|
"@size-limit/preset-app": "^12.0.0",
|
|
"@swc-node/register": "~1.9.1",
|
|
"@swc/cli": "^0.6.0",
|
|
"@swc/core": "~1.5.7",
|
|
"@swc/helpers": "~0.5.11",
|
|
"@tailwindcss/postcss": "^4.1.17",
|
|
"@testing-library/react": "15.0.6",
|
|
"@types/is-hotkey": "^0.1.10",
|
|
"@types/js-yaml": "^4.0.9",
|
|
"@types/node": "18.16.9",
|
|
"@types/react": "18.3.1",
|
|
"@types/react-dom": "18.3.0",
|
|
"@typescript-eslint/eslint-plugin": "^7.3.0",
|
|
"@typescript-eslint/parser": "^7.3.0",
|
|
"@vitejs/plugin-react": "^4.2.0",
|
|
"@vitest/ui": "^3.0.8",
|
|
"autoprefixer": "^10.4.22",
|
|
"concurrently": "^9.2.1",
|
|
"eslint": "~8.57.0",
|
|
"eslint-config-prettier": "^9.0.0",
|
|
"eslint-plugin-import": "2.27.5",
|
|
"eslint-plugin-jsx-a11y": "6.7.1",
|
|
"eslint-plugin-playwright": "^0.15.3",
|
|
"eslint-plugin-react": "7.32.2",
|
|
"eslint-plugin-react-hooks": "4.6.0",
|
|
"glob": "^13.0.0",
|
|
"gray-matter": "^4.0.3",
|
|
"js-yaml": "^4.1.1",
|
|
"jsdom": "~22.1.0",
|
|
"nx": "19.3.0",
|
|
"postcss": "^8.5.6",
|
|
"prettier": "^2.6.2",
|
|
"rollup-plugin-visualizer": "^6.0.5",
|
|
"sass": "^1.55.0",
|
|
"size-limit": "^12.0.0",
|
|
"tailwindcss": "^4.1.17",
|
|
"ts-node": "10.9.1",
|
|
"typescript": "~5.4.2",
|
|
"vite": "^6.2.2",
|
|
"vite-plugin-dts": "^4.5.3",
|
|
"vitest": "^3.0.8",
|
|
"wait-on": "^9.0.3"
|
|
}
|
|
}
|