{"_id":"@alleninstitute/vis-scatterbrain","_rev":"4-98f5a46530ad930c8d092c00d8538003","name":"@alleninstitute/vis-scatterbrain","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.2":{"name":"@alleninstitute/vis-scatterbrain","version":"0.0.2","license":"BSD-3-Clause","_id":"@alleninstitute/vis-scatterbrain@0.0.2","maintainers":[{"name":"lanesawyer","email":"npm@lanesawyer.dev"},{"name":"fcollman","email":"forrestc@alleninstitute.org"},{"name":"allen_skylermoosman","email":"skyler.moosman@alleninstitute.org"},{"name":"jarbuck","email":"joel.arbuckle@alleninstitute.org"}],"contributors":[{"name":"Lane Sawyer","email":"lane.sawyer@alleninstitute.org"},{"name":"James Gerstenberger","email":"james.gerstenberger@alleninstitute.org"},{"name":"Noah Shepard","email":"noah.shepard@alleninstitute.org"},{"name":"Skyler Moosman","email":"skyler.moosman@alleninstitute.org"},{"name":"Su Li","email":"su.li@alleninstitute.org"},{"name":"Joel Arbuckle","email":"joel.arbuckle@alleninstitute.org"}],"homepage":"https://github.com/AllenInstitute/vis#readme","bugs":{"url":"https://github.com/AllenInstitute/vis/issues"},"dist":{"shasum":"135d83f98176ac98c05bf7012439ebcd7006a45b","tarball":"https://registry.npmjs.org/@alleninstitute/vis-scatterbrain/-/vis-scatterbrain-0.0.2.tgz","fileCount":7,"integrity":"sha512-rpX2Mi8xJyvrDgrvFp/ZxQVhpknWWJRTBfVRvXA601BxwHaeCPJGpIbGwBvfRSsJYLsPf9BAeignZfrtoAr4+A==","signatures":[{"sig":"MEUCIC/+mJLpSSFQvmZxpWOGSQoJZSnsNWnbZVKDQB/gRI48AiEAgIws1sBnQw6cVPkk4CKM+/EcPXaazPN/2wcGzgc8mSs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98544},"main":"dist/main.js","type":"module","_from":"file:alleninstitute-vis-scatterbrain-0.0.2.tgz","types":"dist/types.d.ts","source":"src/index.ts","scripts":{"dev":"parcel watch --port 1239","demo":"vite","test":"vitest --watch","build":"parcel build --no-cache","test:ci":"vitest run","coverage":"vitest run --coverage","changelog":"git-cliff -o changelog.md","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lanesawyer","email":"npm@lanesawyer.dev"},"_resolved":"/private/var/folders/4k/tnltzwpd7wgdy3z3r1ds_wk00000gr/T/d4e078218e468e6fa8d16be465980c7b/alleninstitute-vis-scatterbrain-0.0.2.tgz","_integrity":"sha512-rpX2Mi8xJyvrDgrvFp/ZxQVhpknWWJRTBfVRvXA601BxwHaeCPJGpIbGwBvfRSsJYLsPf9BAeignZfrtoAr4+A==","repository":{"url":"git+https://github.com/AllenInstitute/vis.git","type":"git"},"_npmVersion":"10.9.0","description":"rendering utilities to render scatter plots, with specific support for 'scatterbrain' style (quad-tree spatial indexed) data sources as used for years now in ABC-atlas","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"4.3.6","regl":"2.1.0","lodash":"4.17.23","ts-pattern":"5.9.0","@alleninstitute/vis-core":"0.0.6","@alleninstitute/vis-geometry":"0.0.8"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/lodash":"4.17.24"},"_npmOperationalInternal":{"tmp":"tmp/vis-scatterbrain_0.0.2_1774415763206_0.9252853549324396","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@alleninstitute/vis-scatterbrain","version":"0.0.3","license":"BSD-3-Clause","_id":"@alleninstitute/vis-scatterbrain@0.0.3","maintainers":[{"name":"lanesawyer","email":"npm@lanesawyer.dev"},{"name":"fcollman","email":"forrestc@alleninstitute.org"},{"name":"allen_skylermoosman","email":"skyler.moosman@alleninstitute.org"},{"name":"jarbuck","email":"joel.arbuckle@alleninstitute.org"}],"contributors":[{"name":"Lane Sawyer","email":"lane.sawyer@alleninstitute.org"},{"name":"James Gerstenberger","email":"james.gerstenberger@alleninstitute.org"},{"name":"Noah Shepard","email":"noah.shepard@alleninstitute.org"},{"name":"Skyler Moosman","email":"skyler.moosman@alleninstitute.org"},{"name":"Su Li","email":"su.li@alleninstitute.org"},{"name":"Joel Arbuckle","email":"joel.arbuckle@alleninstitute.org"}],"homepage":"https://github.com/AllenInstitute/vis#readme","bugs":{"url":"https://github.com/AllenInstitute/vis/issues"},"dist":{"shasum":"9e85749fac50418ecaeb22b8c387c44f590b301b","tarball":"https://registry.npmjs.org/@alleninstitute/vis-scatterbrain/-/vis-scatterbrain-0.0.3.tgz","fileCount":7,"integrity":"sha512-Anzo4RMyi89FKt6AC4kdBY9wSPcVfO/Bose/5+89YUItEXtrDM5jUaiZ6aEXCQpGKfdQ9+70d6wqhBVF6vgIhg==","signatures":[{"sig":"MEUCIQCLT18Og/G1Juqw6PdHtXhPkZaBJ4vj26xKJZFxmgc45QIgbU5ruzKjHCgfQa5Kr60EOymX/Jc6MjAWKz/x+qSCZqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100638},"main":"dist/main.js","type":"module","_from":"file:alleninstitute-vis-scatterbrain-0.0.3.tgz","types":"dist/types.d.ts","source":"src/index.ts","scripts":{"dev":"parcel watch --port 1239","demo":"vite","test":"vitest --watch","build":"parcel build --no-cache","test:ci":"vitest run","coverage":"vitest run --coverage","changelog":"git-cliff -o changelog.md","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lanesawyer","email":"npm@lanesawyer.dev"},"_resolved":"/private/var/folders/4k/tnltzwpd7wgdy3z3r1ds_wk00000gr/T/448faa4445188b665c5195b2c381e3fe/alleninstitute-vis-scatterbrain-0.0.3.tgz","_integrity":"sha512-Anzo4RMyi89FKt6AC4kdBY9wSPcVfO/Bose/5+89YUItEXtrDM5jUaiZ6aEXCQpGKfdQ9+70d6wqhBVF6vgIhg==","repository":{"url":"git+https://github.com/AllenInstitute/vis.git","type":"git"},"_npmVersion":"11.12.1","description":"rendering utilities to render scatter plots, with specific support for 'scatterbrain' style (quad-tree spatial indexed) data sources as used for years now in ABC-atlas","directories":{},"_nodeVersion":"24.15.0","dependencies":{"zod":"4.3.6","regl":"2.1.0","lodash":"4.17.23","ts-pattern":"5.9.0","@alleninstitute/vis-core":"0.0.7","@alleninstitute/vis-geometry":"0.0.8"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/lodash":"4.17.24"},"_npmOperationalInternal":{"tmp":"tmp/vis-scatterbrain_0.0.3_1778090570020_0.2672286590113262","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@alleninstitute/vis-scatterbrain","version":"0.1.0","license":"BSD-3-Clause","_id":"@alleninstitute/vis-scatterbrain@0.1.0","maintainers":[{"name":"lanesawyer","email":"npm@lanesawyer.dev"},{"name":"fcollman","email":"forrestc@alleninstitute.org"},{"name":"allen_skylermoosman","email":"skyler.moosman@alleninstitute.org"},{"name":"jarbuck","email":"joel.arbuckle@alleninstitute.org"}],"contributors":[{"name":"Lane Sawyer","email":"lane.sawyer@alleninstitute.org"},{"name":"James Gerstenberger","email":"james.gerstenberger@alleninstitute.org"},{"name":"Noah Shepard","email":"noah.shepard@alleninstitute.org"},{"name":"Skyler Moosman","email":"skyler.moosman@alleninstitute.org"},{"name":"Su Li","email":"su.li@alleninstitute.org"},{"name":"Joel Arbuckle","email":"joel.arbuckle@alleninstitute.org"}],"homepage":"https://github.com/AllenInstitute/vis#readme","bugs":{"url":"https://github.com/AllenInstitute/vis/issues"},"dist":{"shasum":"a5795b42c798e980dbf090eb8470eb5a61dbe90e","tarball":"https://registry.npmjs.org/@alleninstitute/vis-scatterbrain/-/vis-scatterbrain-0.1.0.tgz","fileCount":6,"integrity":"sha512-ZxWc6qYPiaXsBF7pwr2Tch6/cu8vW1VuWcQSsP8hAd1SVBfke9WbivyUsle39AfOTpHWeNrlar6sWAyGzEBBAg==","signatures":[{"sig":"MEQCIErNZMEHdzwPGOkZrvj8ynfy/SjmaPUimXAJ1kgAHzZFAiACcTWBAIFN3YxKZ1ljBT1FSns9ajvIxaCkbUpJpA/YoA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alleninstitute%2fvis-scatterbrain@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":99514},"main":"dist/main.js","type":"module","types":"dist/types.d.ts","source":"src/index.ts","gitHead":"c525418c163366e2993e4d4919620b34ac87329c","scripts":{"dev":"parcel watch --port 1239","demo":"vite","test":"vitest --watch","build":"parcel build --no-cache","test:ci":"vitest run","coverage":"vitest run --coverage","changelog":"git-cliff -o changelog.md --tag-pattern @alleninstitute/vis-scatterbrain@*","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:68f0e9ec-fd3a-4698-8d72-ff6b4a9254f1"}},"repository":{"url":"git+https://github.com/AllenInstitute/vis.git","type":"git"},"_npmVersion":"11.12.1","description":"rendering utilities to render scatter plots, with specific support for 'scatterbrain' style (quad-tree spatial indexed) data sources as used for years now in ABC-atlas","directories":{},"_nodeVersion":"24.15.0","dependencies":{"zod":"4.3.6","regl":"2.1.0","lodash":"4.18.1","ts-pattern":"5.9.0","@alleninstitute/vis-core":"workspace:*","@alleninstitute/vis-geometry":"workspace:*"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"pnpm@9.14.2","devDependencies":{"@types/lodash":"4.17.24"},"_npmOperationalInternal":{"tmp":"tmp/vis-scatterbrain_0.1.0_1778279985675_0.5699349075681965","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-03-25T05:16:03.124Z","modified":"2026-07-08T17:35:43.738Z","0.0.2":"2026-03-25T05:16:03.428Z","0.0.3":"2026-05-06T18:02:50.159Z","0.1.0":"2026-05-08T22:39:45.833Z"},"bugs":{"url":"https://github.com/AllenInstitute/vis/issues"},"license":"BSD-3-Clause","homepage":"https://github.com/AllenInstitute/vis#readme","repository":{"url":"git+https://github.com/AllenInstitute/vis.git","type":"git"},"description":"rendering utilities to render scatter plots, with specific support for 'scatterbrain' style (quad-tree spatial indexed) data sources as used for years now in ABC-atlas","contributors":[{"name":"Lane Sawyer","email":"lane.sawyer@alleninstitute.org"},{"name":"James Gerstenberger","email":"james.gerstenberger@alleninstitute.org"},{"name":"Noah Shepard","email":"noah.shepard@alleninstitute.org"},{"name":"Skyler Moosman","email":"skyler.moosman@alleninstitute.org"},{"name":"Su Li","email":"su.li@alleninstitute.org"},{"name":"Joel Arbuckle","email":"joel.arbuckle@alleninstitute.org"}],"maintainers":[{"email":"npm@lanesawyer.dev","name":"lanesawyer"},{"email":"forrestc@alleninstitute.org","name":"fcollman"},{"email":"skyler.moosman@alleninstitute.org","name":"allen_skylermoosman"},{"email":"joel.arbuckle@alleninstitute.org","name":"jarbuck"},{"email":"nshepar@gmail.com","name":"nope_froyo"}],"readme":"# Scatterbrain\n\nrendering utilities to render scatter plots, with specific support for 'scatterbrain' style (quad-tree spatial indexed) data sources as used for years now in ABC-atlas\n\n## Why?\n\nWe wrote the ABC-atlas version of Scatterbrain rendering in a hot hot hurry a few years ago. At the time, we were preparing for a lot of variation along certain paths of development,\nand as is often the case, those guesses were a bit off the mark. As a result, the flexibility points we built into that version are not helping us much. For example, we take great pains to\ngenerate shaders with readable \"column names\" as users select different filter settings. However, for reasons, the names are just referenceIds from the backend, and we really never bother to debug the shaders in that way - they either fail up-front, or work fine, or are broken in more subtle ways that tend to have nothing to do with the names of the data.\n\n## What is the goal here?\n\nThe goal is to modernize and simplify the WebGL powered features of ABC-atlas. We'd like to be able to understand the management of rendering resources, have more comprehensible interop\nwith the rest of the React UI system, and in general reduce the confusingly generic (and needlessly generic) nature of various parts, as well as having less verbose and weird areas around\nthe actual features we did build (but didn't really prepare for) like:\n\nhovering to report cell-info to the rest of the system\nmultiple gene coloring / filtering\nslide-view / regular view\n\nto this end, we are gonna stick to the Renderer<> interface as given in packages/core/src/abstract/types.ts. We've seen that work with both the somewhat Ill-fated renderServer, as well as the new shared-cache\nstuff, so it seems like it might be ok.\n","readmeFilename":"readme.md"}