UNPKG

react-three-nurbs

Version:

A React component library for NURBS (Non-Uniform Rational B-Spline) curves, surfaces, and solids in Three.js. Built with React Three Fiber, zero external NURBS dependencies — all math implemented from scratch. Boolean operations powered by OpenCASCADE WAS

91 lines (90 loc) 2.59 kB
{ "name": "react-three-nurbs", "private": false, "version": "0.4.5", "type": "module", "files": [ "dist", "src/occt/occtBooleans.js", "src/occt/occtBooleans.wasm", "src/occt/occtBooleans.d.ts" ], "author": "Tommaso Turchi", "license": "MIT", "main": "./dist/index.js", "module": "./dist/index.js", "types": "./dist/index.d.ts", "exports": { ".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" } }, "scripts": { "dev": "npm run setup:occt && storybook dev -p 6006", "build": "tsc && vite build && tsc -p tsconfig.build.json", "lint": "eslint .", "storybook": "npm run setup:occt && storybook dev -p 6006", "build-storybook": "npm run setup:occt && storybook build", "setup:occt": "mkdir -p public && cp -f src/occt/occtBooleans.wasm public/ 2>/dev/null || true", "test": "vitest", "test:run": "vitest run", "prepublishOnly": "npm run build", "preversion": "npm run lint && npm run test:run", "release": "npm run lint && npm run test:run && npm run build && npm publish" }, "publishConfig": { "access": "public" }, "repository": { "type": "git", "url": "git+https://github.com/tommasoturchi/react-three-nurbs.git" }, "keywords": [ "react", "three.js", "react-three-fiber", "nurbs", "curves", "surfaces", "3d" ], "bugs": { "url": "https://github.com/tommasoturchi/react-three-nurbs/issues" }, "homepage": "https://react-three-nurbs.trx.li/", "dependencies": { "earcut": "^3.0.1" }, "devDependencies": { "@storybook/addon-essentials": "8.6.14", "@storybook/addon-interactions": "8.6.14", "@storybook/addon-links": "8.6.14", "@storybook/blocks": "8.6.14", "@storybook/builder-vite": "8.6.14", "@storybook/react": "8.6.14", "@storybook/react-vite": "8.6.14", "@types/node": "^22.15.17", "@types/react": "^18.2.55", "@types/react-dom": "^18.2.19", "@types/three": "^0.161.2", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", "@vitejs/plugin-react": "^4.2.1", "eslint": "^8.56.0", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-refresh": "^0.4.5", "happy-dom": "^20.8.9", "typescript": "^5.2.2", "verb-nurbs": "^3.0.3", "vite": "^5.1.0", "vitest": "^4.1.2" }, "peerDependencies": { "@react-three/drei": ">=9.0.0", "@react-three/fiber": ">=8.0.0", "react": "^18.2.0 || ^19.0.0", "react-dom": "^18.2.0 || ^19.0.0", "three": ">=0.150.0" } }