Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@geoarrow/geoarrow-js
Advanced tools
geoarrow-js
A minimal TypeScript implementation of GeoArrow building on top of Arrow JS.
It complements the work-in-progress geoarrow-wasm
, which will provide Rust-based operations on GeoArrow memory.
Only spatial operations that are implemented on binary representations of geometry will be added to this repo.
This means that geoarrow-js
will not, say, use algorithms from Turf, because that would require conversions to and from GeoJSON for the operation.
Refer to the algorithm
namespace in the docs.
@math.gl/polygon
)@math.gl/polygon
)@math.gl/polygon
, a fork of earcut
.)proj4
)Refer to the worker
namespace. Use preparePostMessage
to obtain references to all underlying ArrayBuffer
objects, so they can be transfered instead of copied.
import * as arrow from "apache-arrow";
import {
preparePostMessage,
rehydrateVector,
} from "@geoarrow/geoarrow-js/worker";
const originalVector = arrow.makeVector(new Int32Array([1, 2, 3]));
const [preparedVector, arrayBuffers] = preparePostMessage(originalVector);
// Here we use structuredClone to simulate a postMessage but on the main thread
const receivedVector = structuredClone(preparedVector, {
transfer: arrayBuffers,
});
const rehydratedVector = rehydrateVector(receivedVector);
geoarrow-js
is designed to be used seamlessly with WebAssembly-based GeoArrow operations, such as those in the JavaScript bindings of the Rust GeoArrow implementation, and with rendering libraries, such as deck.gl, with the help of @geoarrow/deck.gl-layers
.
For more background on my plans for GeoArrow ecosystem in JS and WebAssembly, refer to this thread.
FAQs
TypeScript implementation of GeoArrow
We found that @geoarrow/geoarrow-js demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.