{"id":179665158,"number":"0.21.2","published_at":"2026-03-09T19:11:36.118Z","licenses":"","integrity":"sha512-xj3zIh/NgxtZGjo92v0QpasbKI/JtzKY3AiMJLXzKBH6Cb6g3CBZp8bkXGsdiSQE7T+5r1cmw8BsrgeJ3vfXnA==","status":null,"download_url":"https://registry.npmjs.org/@loopstack/loopstack-studio/-/loopstack-studio-0.21.2.tgz","registry_url":"https://www.npmjs.com/package/@loopstack/loopstack-studio/v/0.21.2","documentation_url":null,"install_command":"npm install @loopstack/loopstack-studio@0.21.2","metadata":{"deprecated":null,"_npmUser":{"name":"loopstack.ai","email":"jakob@loopstack.ai"},"dist":{"shasum":"bb72957dd26bce8b4b64958c2d09bb19331ac8ee","tarball":"https://registry.npmjs.org/@loopstack/loopstack-studio/-/loopstack-studio-0.21.2.tgz","fileCount":1651,"integrity":"sha512-xj3zIh/NgxtZGjo92v0QpasbKI/JtzKY3AiMJLXzKBH6Cb6g3CBZp8bkXGsdiSQE7T+5r1cmw8BsrgeJ3vfXnA==","signatures":[{"sig":"MEUCIQCiiK/va43Cc15vulZ9g2C0d3e4FcKH5ApaNXeWwRxRagIgGVNGwEr9f4zYRd3M6fyxkPVkMqcrf5GGluIAUiz6SCY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17489876},"gitHead":"49eaa2cefce5b4563da0a49dfd8efdb6e3b7c2c1","main":"./dist/index.js","scripts":{"dev":"tsc -b \u0026\u0026 vite","lint":"eslint .","test":"vitest run","build":"tsc -b \u0026\u0026 vite build","format":"prettier --write .","preview":"vite preview","build:prod":"tsc -b \u0026\u0026 vite build --mode prod"},"_npmVersion":"10.8.2","_nodeVersion":"20.20.0","_hasShrinkwrap":false,"directories":{},"engines":null,"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./dist/*.d.ts","import":"./dist/*.js"}},"browserify":null},"created_at":"2026-03-16T08:52:06.787Z","updated_at":"2026-03-16T08:52:06.787Z","purl":"pkg:npm/%40loopstack/loopstack-studio@0.21.2","related_tag":null,"latest":false,"version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@loopstack%2Floopstack-studio/versions/0.21.2","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@loopstack%2Floopstack-studio/versions/0.21.2/codemeta","dependencies":[{"id":1956908122,"ecosystem":"npm","package_name":"ai","requirements":"^6.0.97","kind":"runtime","optional":false},{"id":1956908123,"ecosystem":"npm","package_name":"zod","requirements":"^4.3.6","kind":"runtime","optional":false},{"id":1956908124,"ecosystem":"npm","package_name":"clsx","requirements":"^2.1.1","kind":"runtime","optional":false},{"id":1956908125,"ecosystem":"npm","package_name":"cmdk","requirements":"^1.1.1","kind":"runtime","optional":false},{"id":1956908126,"ecosystem":"npm","package_name":"vaul","requirements":"^1.1.2","kind":"runtime","optional":false},{"id":1956908127,"ecosystem":"npm","package_name":"axios","requirements":"^1.13.5","kind":"runtime","optional":false},{"id":1956908128,"ecosystem":"npm","package_name":"katex","requirements":"^0.16.33","kind":"runtime","optional":false},{"id":1956908129,"ecosystem":"npm","package_name":"react","requirements":"^19.2.4","kind":"runtime","optional":false},{"id":1956908130,"ecosystem":"npm","package_name":"shiki","requirements":"^3.22.0","kind":"runtime","optional":false},{"id":1956908131,"ecosystem":"npm","package_name":"lodash","requirements":"^4.17.23","kind":"runtime","optional":false},{"id":1956908132,"ecosystem":"npm","package_name":"motion","requirements":"^12.34.3","kind":"runtime","optional":false},{"id":1956908133,"ecosystem":"npm","package_name":"nanoid","requirements":"^5.1.6","kind":"runtime","optional":false},{"id":1956908134,"ecosystem":"npm","package_name":"sonner","requirements":"^2.0.7","kind":"runtime","optional":false},{"id":1956908135,"ecosystem":"npm","package_name":"mermaid","requirements":"^11.12.3","kind":"runtime","optional":false},{"id":1956908136,"ecosystem":"npm","package_name":"date-fns","requirements":"^4.1.0","kind":"runtime","optional":false},{"id":1956908137,"ecosystem":"npm","package_name":"react-dom","requirements":"^19.2.4","kind":"runtime","optional":false},{"id":1956908138,"ecosystem":"npm","package_name":"tokenlens","requirements":"^1.3.1","kind":"runtime","optional":false},{"id":1956908139,"ecosystem":"npm","package_name":"remark-gfm","requirements":"^4.0.1","kind":"runtime","optional":false},{"id":1956908140,"ecosystem":"npm","package_name":"streamdown","requirements":"^2.3.0","kind":"runtime","optional":false},{"id":1956908141,"ecosystem":"npm","package_name":"remark-math","requirements":"^6.0.0","kind":"runtime","optional":false},{"id":1956908142,"ecosystem":"npm","package_name":"tailwindcss","requirements":"^4.2.1","kind":"runtime","optional":false},{"id":1956908143,"ecosystem":"npm","package_name":"lucide-react","requirements":"^0.575.0","kind":"runtime","optional":false},{"id":1956908144,"ecosystem":"npm","package_name":"rehype-katex","requirements":"^7.0.1","kind":"runtime","optional":false},{"id":1956908145,"ecosystem":"npm","package_name":"@xyflow/react","requirements":"^12.10.1","kind":"runtime","optional":false},{"id":1956908146,"ecosystem":"npm","package_name":"react-markdown","requirements":"^10.1.0","kind":"runtime","optional":false},{"id":1956908147,"ecosystem":"npm","package_name":"tailwind-merge","requirements":"^3.5.0","kind":"runtime","optional":false},{"id":1956908148,"ecosystem":"npm","package_name":"react-hook-form","requirements":"^7.71.2","kind":"runtime","optional":false},{"id":1956908149,"ecosystem":"npm","package_name":"react-router-dom","requirements":"^7.13.1","kind":"runtime","optional":false},{"id":1956908150,"ecosystem":"npm","package_name":"@tailwindcss/vite","requirements":"^4.2.1","kind":"runtime","optional":false},{"id":1956908151,"ecosystem":"npm","package_name":"@fontsource/roboto","requirements":"^5.2.10","kind":"runtime","optional":false},{"id":1956908152,"ecosystem":"npm","package_name":"@hookform/resolvers","requirements":"^5.2.2","kind":"runtime","optional":false},{"id":1956908153,"ecosystem":"npm","package_name":"use-stick-to-bottom","requirements":"^1.1.3","kind":"runtime","optional":false},{"id":1956908154,"ecosystem":"npm","package_name":"@loopstack/contracts","requirements":"^0.22.0","kind":"runtime","optional":false},{"id":1956908155,"ecosystem":"npm","package_name":"@radix-ui/react-slot","requirements":"^1.2.4","kind":"runtime","optional":false},{"id":1956908156,"ecosystem":"npm","package_name":"@radix-ui/react-tabs","requirements":"^1.1.13","kind":"runtime","optional":false},{"id":1956908157,"ecosystem":"npm","package_name":"embla-carousel-react","requirements":"^8.6.0","kind":"runtime","optional":false},{"id":1956908158,"ecosystem":"npm","package_name":"@loopstack/api-client","requirements":"^0.20.1","kind":"runtime","optional":false},{"id":1956908159,"ecosystem":"npm","package_name":"@radix-ui/react-label","requirements":"^2.1.8","kind":"runtime","optional":false},{"id":1956908160,"ecosystem":"npm","package_name":"@tanstack/react-query","requirements":"^5.90.21","kind":"runtime","optional":false},{"id":1956908161,"ecosystem":"npm","package_name":"@radix-ui/react-avatar","requirements":"^1.1.11","kind":"runtime","optional":false},{"id":1956908162,"ecosystem":"npm","package_name":"@radix-ui/react-dialog","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908163,"ecosystem":"npm","package_name":"@radix-ui/react-select","requirements":"^2.2.6","kind":"runtime","optional":false},{"id":1956908164,"ecosystem":"npm","package_name":"@radix-ui/react-slider","requirements":"^1.3.6","kind":"runtime","optional":false},{"id":1956908165,"ecosystem":"npm","package_name":"@radix-ui/react-switch","requirements":"^1.2.6","kind":"runtime","optional":false},{"id":1956908166,"ecosystem":"npm","package_name":"unique-names-generator","requirements":"^4.7.1","kind":"runtime","optional":false},{"id":1956908167,"ecosystem":"npm","package_name":"@radix-ui/react-menubar","requirements":"^1.1.16","kind":"runtime","optional":false},{"id":1956908168,"ecosystem":"npm","package_name":"@radix-ui/react-popover","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908169,"ecosystem":"npm","package_name":"@radix-ui/react-tooltip","requirements":"^1.2.8","kind":"runtime","optional":false},{"id":1956908170,"ecosystem":"npm","package_name":"@radix-ui/react-checkbox","requirements":"^1.3.3","kind":"runtime","optional":false},{"id":1956908171,"ecosystem":"npm","package_name":"@radix-ui/react-progress","requirements":"^1.1.8","kind":"runtime","optional":false},{"id":1956908172,"ecosystem":"npm","package_name":"class-variance-authority","requirements":"^0.7.1","kind":"runtime","optional":false},{"id":1956908173,"ecosystem":"npm","package_name":"react-syntax-highlighter","requirements":"^16.1.0","kind":"runtime","optional":false},{"id":1956908174,"ecosystem":"npm","package_name":"@radix-ui/react-accordion","requirements":"^1.2.12","kind":"runtime","optional":false},{"id":1956908175,"ecosystem":"npm","package_name":"@radix-ui/react-separator","requirements":"^1.1.8","kind":"runtime","optional":false},{"id":1956908176,"ecosystem":"npm","package_name":"@radix-ui/react-hover-card","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908177,"ecosystem":"npm","package_name":"@radix-ui/react-collapsible","requirements":"^1.1.12","kind":"runtime","optional":false},{"id":1956908178,"ecosystem":"npm","package_name":"@radix-ui/react-radio-group","requirements":"^1.3.8","kind":"runtime","optional":false},{"id":1956908179,"ecosystem":"npm","package_name":"@radix-ui/react-scroll-area","requirements":"^1.2.10","kind":"runtime","optional":false},{"id":1956908180,"ecosystem":"npm","package_name":"@radix-ui/react-alert-dialog","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908181,"ecosystem":"npm","package_name":"@radix-ui/react-context-menu","requirements":"^2.2.16","kind":"runtime","optional":false},{"id":1956908182,"ecosystem":"npm","package_name":"@radix-ui/react-dropdown-menu","requirements":"^2.1.16","kind":"runtime","optional":false},{"id":1956908183,"ecosystem":"npm","package_name":"@radix-ui/react-use-controllable-state","requirements":"^1.2.2","kind":"runtime","optional":false},{"id":1956908184,"ecosystem":"npm","package_name":"vite","requirements":"npm:rolldown-vite@7.3.1","kind":"Development","optional":false},{"id":1956908185,"ecosystem":"npm","package_name":"husky","requirements":"^9.1.7","kind":"Development","optional":false},{"id":1956908186,"ecosystem":"npm","package_name":"eslint","requirements":"^10.0.2","kind":"Development","optional":false},{"id":1956908187,"ecosystem":"npm","package_name":"vitest","requirements":"^4.0.18","kind":"Development","optional":false},{"id":1956908188,"ecosystem":"npm","package_name":"globals","requirements":"^17.3.0","kind":"Development","optional":false},{"id":1956908189,"ecosystem":"npm","package_name":"prettier","requirements":"^3.8.1","kind":"Development","optional":false},{"id":1956908190,"ecosystem":"npm","package_name":"@eslint/js","requirements":"^10.0.1","kind":"Development","optional":false},{"id":1956908191,"ecosystem":"npm","package_name":"typescript","requirements":"^5.9.3","kind":"Development","optional":false},{"id":1956908192,"ecosystem":"npm","package_name":"@types/node","requirements":"^25.3.0","kind":"Development","optional":false},{"id":1956908193,"ecosystem":"npm","package_name":"lint-staged","requirements":"^16.2.7","kind":"Development","optional":false},{"id":1956908194,"ecosystem":"npm","package_name":"@types/dagre","requirements":"^0.7.53","kind":"Development","optional":false},{"id":1956908195,"ecosystem":"npm","package_name":"@types/react","requirements":"^19.2.14","kind":"Development","optional":false},{"id":1956908196,"ecosystem":"npm","package_name":"@types/lodash","requirements":"^4.17.24","kind":"Development","optional":false},{"id":1956908197,"ecosystem":"npm","package_name":"@dagrejs/dagre","requirements":"^2.0.4","kind":"Development","optional":false},{"id":1956908198,"ecosystem":"npm","package_name":"tw-animate-css","requirements":"^1.4.0","kind":"Development","optional":false},{"id":1956908199,"ecosystem":"npm","package_name":"vite-plugin-dts","requirements":"^4.5.4","kind":"Development","optional":false},{"id":1956908200,"ecosystem":"npm","package_name":"@types/react-dom","requirements":"^19.2.3","kind":"Development","optional":false},{"id":1956908201,"ecosystem":"npm","package_name":"typescript-eslint","requirements":"^8.56.1","kind":"Development","optional":false},{"id":1956908202,"ecosystem":"npm","package_name":"@vitejs/plugin-react","requirements":"^5.1.4","kind":"Development","optional":false},{"id":1956908203,"ecosystem":"npm","package_name":"@testing-library/react","requirements":"^16.3.2","kind":"Development","optional":false},{"id":1956908204,"ecosystem":"npm","package_name":"eslint-config-prettier","requirements":"^10.1.8","kind":"Development","optional":false},{"id":1956908205,"ecosystem":"npm","package_name":"eslint-plugin-prettier","requirements":"^5.5.5","kind":"Development","optional":false},{"id":1956908206,"ecosystem":"npm","package_name":"@testing-library/jest-dom","requirements":"^6.9.1","kind":"Development","optional":false},{"id":1956908207,"ecosystem":"npm","package_name":"@testing-library/user-event","requirements":"^14.6.1","kind":"Development","optional":false},{"id":1956908208,"ecosystem":"npm","package_name":"babel-plugin-react-compiler","requirements":"^19.1.0-rc.3","kind":"Development","optional":false},{"id":1956908209,"ecosystem":"npm","package_name":"eslint-plugin-react-refresh","requirements":"^0.5.2","kind":"Development","optional":false},{"id":1956908210,"ecosystem":"npm","package_name":"prettier-plugin-tailwindcss","requirements":"^0.7.2","kind":"Development","optional":false},{"id":1956908211,"ecosystem":"npm","package_name":"@types/react-syntax-highlighter","requirements":"^15.5.13","kind":"Development","optional":false},{"id":1956908212,"ecosystem":"npm","package_name":"@trivago/prettier-plugin-sort-imports","requirements":"^6.0.2","kind":"Development","optional":false}],"package_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@loopstack%2Floopstack-studio"}