{"id":179665157,"number":"0.21.1","published_at":"2026-03-03T13:25:54.678Z","licenses":"","integrity":"sha512-cRtFRcWlp2Lmm4nbx3ZTQQXElvBOSJOl8EOP1vY87Y3uffDp4cJISOUBWk6k28rKrTAHLtk7GVE6w130WiIYXg==","status":null,"download_url":"https://registry.npmjs.org/@loopstack/loopstack-studio/-/loopstack-studio-0.21.1.tgz","registry_url":"https://www.npmjs.com/package/@loopstack/loopstack-studio/v/0.21.1","documentation_url":null,"install_command":"npm install @loopstack/loopstack-studio@0.21.1","metadata":{"deprecated":null,"_npmUser":{"name":"loopstack.ai","email":"jakob@loopstack.ai"},"dist":{"shasum":"c1b2cf9f17e92be4f8acbf5df3a6784b4d4b1ae8","tarball":"https://registry.npmjs.org/@loopstack/loopstack-studio/-/loopstack-studio-0.21.1.tgz","fileCount":1634,"integrity":"sha512-cRtFRcWlp2Lmm4nbx3ZTQQXElvBOSJOl8EOP1vY87Y3uffDp4cJISOUBWk6k28rKrTAHLtk7GVE6w130WiIYXg==","signatures":[{"sig":"MEUCIQD9N2Ob+BTRWeYoKWxg/XzMJ0klQ8uufRt1qNWRTUP/JgIgc1OL4UR8Vzrvqd3imKJ1G2E2pQzBxjfwEm0347iOXTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17476623},"gitHead":"1aa256482f72ffe9fc47e6dc654a3d1b4ea464e7","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.785Z","updated_at":"2026-03-16T08:52:06.785Z","purl":"pkg:npm/%40loopstack/loopstack-studio@0.21.1","related_tag":null,"latest":false,"version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@loopstack%2Floopstack-studio/versions/0.21.1","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@loopstack%2Floopstack-studio/versions/0.21.1/codemeta","dependencies":[{"id":1956908031,"ecosystem":"npm","package_name":"ai","requirements":"^6.0.97","kind":"runtime","optional":false},{"id":1956908032,"ecosystem":"npm","package_name":"zod","requirements":"^4.3.6","kind":"runtime","optional":false},{"id":1956908033,"ecosystem":"npm","package_name":"clsx","requirements":"^2.1.1","kind":"runtime","optional":false},{"id":1956908034,"ecosystem":"npm","package_name":"cmdk","requirements":"^1.1.1","kind":"runtime","optional":false},{"id":1956908035,"ecosystem":"npm","package_name":"vaul","requirements":"^1.1.2","kind":"runtime","optional":false},{"id":1956908036,"ecosystem":"npm","package_name":"axios","requirements":"^1.13.5","kind":"runtime","optional":false},{"id":1956908037,"ecosystem":"npm","package_name":"katex","requirements":"^0.16.33","kind":"runtime","optional":false},{"id":1956908038,"ecosystem":"npm","package_name":"react","requirements":"^19.2.4","kind":"runtime","optional":false},{"id":1956908039,"ecosystem":"npm","package_name":"shiki","requirements":"^3.22.0","kind":"runtime","optional":false},{"id":1956908040,"ecosystem":"npm","package_name":"lodash","requirements":"^4.17.23","kind":"runtime","optional":false},{"id":1956908041,"ecosystem":"npm","package_name":"motion","requirements":"^12.34.3","kind":"runtime","optional":false},{"id":1956908042,"ecosystem":"npm","package_name":"nanoid","requirements":"^5.1.6","kind":"runtime","optional":false},{"id":1956908043,"ecosystem":"npm","package_name":"sonner","requirements":"^2.0.7","kind":"runtime","optional":false},{"id":1956908044,"ecosystem":"npm","package_name":"mermaid","requirements":"^11.12.3","kind":"runtime","optional":false},{"id":1956908045,"ecosystem":"npm","package_name":"date-fns","requirements":"^4.1.0","kind":"runtime","optional":false},{"id":1956908046,"ecosystem":"npm","package_name":"react-dom","requirements":"^19.2.4","kind":"runtime","optional":false},{"id":1956908047,"ecosystem":"npm","package_name":"tokenlens","requirements":"^1.3.1","kind":"runtime","optional":false},{"id":1956908048,"ecosystem":"npm","package_name":"remark-gfm","requirements":"^4.0.1","kind":"runtime","optional":false},{"id":1956908049,"ecosystem":"npm","package_name":"streamdown","requirements":"^2.3.0","kind":"runtime","optional":false},{"id":1956908050,"ecosystem":"npm","package_name":"remark-math","requirements":"^6.0.0","kind":"runtime","optional":false},{"id":1956908051,"ecosystem":"npm","package_name":"tailwindcss","requirements":"^4.2.1","kind":"runtime","optional":false},{"id":1956908052,"ecosystem":"npm","package_name":"lucide-react","requirements":"^0.575.0","kind":"runtime","optional":false},{"id":1956908053,"ecosystem":"npm","package_name":"rehype-katex","requirements":"^7.0.1","kind":"runtime","optional":false},{"id":1956908054,"ecosystem":"npm","package_name":"@xyflow/react","requirements":"^12.10.1","kind":"runtime","optional":false},{"id":1956908055,"ecosystem":"npm","package_name":"react-markdown","requirements":"^10.1.0","kind":"runtime","optional":false},{"id":1956908056,"ecosystem":"npm","package_name":"tailwind-merge","requirements":"^3.5.0","kind":"runtime","optional":false},{"id":1956908057,"ecosystem":"npm","package_name":"react-hook-form","requirements":"^7.71.2","kind":"runtime","optional":false},{"id":1956908058,"ecosystem":"npm","package_name":"react-router-dom","requirements":"^7.13.1","kind":"runtime","optional":false},{"id":1956908059,"ecosystem":"npm","package_name":"@tailwindcss/vite","requirements":"^4.2.1","kind":"runtime","optional":false},{"id":1956908060,"ecosystem":"npm","package_name":"@fontsource/roboto","requirements":"^5.2.10","kind":"runtime","optional":false},{"id":1956908061,"ecosystem":"npm","package_name":"@hookform/resolvers","requirements":"^5.2.2","kind":"runtime","optional":false},{"id":1956908062,"ecosystem":"npm","package_name":"use-stick-to-bottom","requirements":"^1.1.3","kind":"runtime","optional":false},{"id":1956908063,"ecosystem":"npm","package_name":"@loopstack/contracts","requirements":"^0.22.0","kind":"runtime","optional":false},{"id":1956908064,"ecosystem":"npm","package_name":"@radix-ui/react-slot","requirements":"^1.2.4","kind":"runtime","optional":false},{"id":1956908065,"ecosystem":"npm","package_name":"@radix-ui/react-tabs","requirements":"^1.1.13","kind":"runtime","optional":false},{"id":1956908066,"ecosystem":"npm","package_name":"embla-carousel-react","requirements":"^8.6.0","kind":"runtime","optional":false},{"id":1956908067,"ecosystem":"npm","package_name":"@loopstack/api-client","requirements":"^0.20.0","kind":"runtime","optional":false},{"id":1956908068,"ecosystem":"npm","package_name":"@radix-ui/react-label","requirements":"^2.1.8","kind":"runtime","optional":false},{"id":1956908069,"ecosystem":"npm","package_name":"@tanstack/react-query","requirements":"^5.90.21","kind":"runtime","optional":false},{"id":1956908070,"ecosystem":"npm","package_name":"@radix-ui/react-avatar","requirements":"^1.1.11","kind":"runtime","optional":false},{"id":1956908071,"ecosystem":"npm","package_name":"@radix-ui/react-dialog","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908072,"ecosystem":"npm","package_name":"@radix-ui/react-select","requirements":"^2.2.6","kind":"runtime","optional":false},{"id":1956908073,"ecosystem":"npm","package_name":"@radix-ui/react-slider","requirements":"^1.3.6","kind":"runtime","optional":false},{"id":1956908074,"ecosystem":"npm","package_name":"@radix-ui/react-switch","requirements":"^1.2.6","kind":"runtime","optional":false},{"id":1956908075,"ecosystem":"npm","package_name":"unique-names-generator","requirements":"^4.7.1","kind":"runtime","optional":false},{"id":1956908076,"ecosystem":"npm","package_name":"@radix-ui/react-menubar","requirements":"^1.1.16","kind":"runtime","optional":false},{"id":1956908077,"ecosystem":"npm","package_name":"@radix-ui/react-popover","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908078,"ecosystem":"npm","package_name":"@radix-ui/react-tooltip","requirements":"^1.2.8","kind":"runtime","optional":false},{"id":1956908079,"ecosystem":"npm","package_name":"@radix-ui/react-checkbox","requirements":"^1.3.3","kind":"runtime","optional":false},{"id":1956908080,"ecosystem":"npm","package_name":"@radix-ui/react-progress","requirements":"^1.1.8","kind":"runtime","optional":false},{"id":1956908081,"ecosystem":"npm","package_name":"class-variance-authority","requirements":"^0.7.1","kind":"runtime","optional":false},{"id":1956908082,"ecosystem":"npm","package_name":"react-syntax-highlighter","requirements":"^16.1.0","kind":"runtime","optional":false},{"id":1956908083,"ecosystem":"npm","package_name":"@radix-ui/react-accordion","requirements":"^1.2.12","kind":"runtime","optional":false},{"id":1956908084,"ecosystem":"npm","package_name":"@radix-ui/react-separator","requirements":"^1.1.8","kind":"runtime","optional":false},{"id":1956908085,"ecosystem":"npm","package_name":"@radix-ui/react-hover-card","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908086,"ecosystem":"npm","package_name":"@radix-ui/react-collapsible","requirements":"^1.1.12","kind":"runtime","optional":false},{"id":1956908087,"ecosystem":"npm","package_name":"@radix-ui/react-radio-group","requirements":"^1.3.8","kind":"runtime","optional":false},{"id":1956908088,"ecosystem":"npm","package_name":"@radix-ui/react-scroll-area","requirements":"^1.2.10","kind":"runtime","optional":false},{"id":1956908089,"ecosystem":"npm","package_name":"@radix-ui/react-alert-dialog","requirements":"^1.1.15","kind":"runtime","optional":false},{"id":1956908090,"ecosystem":"npm","package_name":"@radix-ui/react-context-menu","requirements":"^2.2.16","kind":"runtime","optional":false},{"id":1956908091,"ecosystem":"npm","package_name":"@radix-ui/react-dropdown-menu","requirements":"^2.1.16","kind":"runtime","optional":false},{"id":1956908092,"ecosystem":"npm","package_name":"@radix-ui/react-use-controllable-state","requirements":"^1.2.2","kind":"runtime","optional":false},{"id":1956908093,"ecosystem":"npm","package_name":"vite","requirements":"npm:rolldown-vite@7.3.1","kind":"Development","optional":false},{"id":1956908094,"ecosystem":"npm","package_name":"husky","requirements":"^9.1.7","kind":"Development","optional":false},{"id":1956908095,"ecosystem":"npm","package_name":"eslint","requirements":"^10.0.2","kind":"Development","optional":false},{"id":1956908096,"ecosystem":"npm","package_name":"vitest","requirements":"^4.0.18","kind":"Development","optional":false},{"id":1956908097,"ecosystem":"npm","package_name":"globals","requirements":"^17.3.0","kind":"Development","optional":false},{"id":1956908098,"ecosystem":"npm","package_name":"prettier","requirements":"^3.8.1","kind":"Development","optional":false},{"id":1956908099,"ecosystem":"npm","package_name":"@eslint/js","requirements":"^10.0.1","kind":"Development","optional":false},{"id":1956908100,"ecosystem":"npm","package_name":"typescript","requirements":"^5.9.3","kind":"Development","optional":false},{"id":1956908101,"ecosystem":"npm","package_name":"@types/node","requirements":"^25.3.0","kind":"Development","optional":false},{"id":1956908102,"ecosystem":"npm","package_name":"lint-staged","requirements":"^16.2.7","kind":"Development","optional":false},{"id":1956908103,"ecosystem":"npm","package_name":"@types/dagre","requirements":"^0.7.53","kind":"Development","optional":false},{"id":1956908104,"ecosystem":"npm","package_name":"@types/react","requirements":"^19.2.14","kind":"Development","optional":false},{"id":1956908105,"ecosystem":"npm","package_name":"@types/lodash","requirements":"^4.17.24","kind":"Development","optional":false},{"id":1956908106,"ecosystem":"npm","package_name":"@dagrejs/dagre","requirements":"^2.0.4","kind":"Development","optional":false},{"id":1956908107,"ecosystem":"npm","package_name":"tw-animate-css","requirements":"^1.4.0","kind":"Development","optional":false},{"id":1956908108,"ecosystem":"npm","package_name":"vite-plugin-dts","requirements":"^4.5.4","kind":"Development","optional":false},{"id":1956908109,"ecosystem":"npm","package_name":"@types/react-dom","requirements":"^19.2.3","kind":"Development","optional":false},{"id":1956908110,"ecosystem":"npm","package_name":"typescript-eslint","requirements":"^8.56.1","kind":"Development","optional":false},{"id":1956908111,"ecosystem":"npm","package_name":"@vitejs/plugin-react","requirements":"^5.1.4","kind":"Development","optional":false},{"id":1956908112,"ecosystem":"npm","package_name":"@testing-library/react","requirements":"^16.3.2","kind":"Development","optional":false},{"id":1956908113,"ecosystem":"npm","package_name":"eslint-config-prettier","requirements":"^10.1.8","kind":"Development","optional":false},{"id":1956908114,"ecosystem":"npm","package_name":"eslint-plugin-prettier","requirements":"^5.5.5","kind":"Development","optional":false},{"id":1956908115,"ecosystem":"npm","package_name":"@testing-library/jest-dom","requirements":"^6.9.1","kind":"Development","optional":false},{"id":1956908116,"ecosystem":"npm","package_name":"@testing-library/user-event","requirements":"^14.6.1","kind":"Development","optional":false},{"id":1956908117,"ecosystem":"npm","package_name":"babel-plugin-react-compiler","requirements":"^19.1.0-rc.3","kind":"Development","optional":false},{"id":1956908118,"ecosystem":"npm","package_name":"eslint-plugin-react-refresh","requirements":"^0.5.2","kind":"Development","optional":false},{"id":1956908119,"ecosystem":"npm","package_name":"prettier-plugin-tailwindcss","requirements":"^0.7.2","kind":"Development","optional":false},{"id":1956908120,"ecosystem":"npm","package_name":"@types/react-syntax-highlighter","requirements":"^15.5.13","kind":"Development","optional":false},{"id":1956908121,"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"}