Compute for the physical index

Run spatial jobs, tiling, and models on managed infrastructure — scale from a laptop to a cluster over the same EDK identifiers and data model you use locally.

One runtime for spatial work

Four building blocks over the same EDK identifiers, Subjects, and Atlas data model.

Spatial jobs

Batch and streaming pipelines over EDK-addressed data — joins, aggregations, and geometry ops that scale horizontally.

Tiling & rendering

Generate vector and raster tiles on demand, cache them at the edge, and style them however you like.

Model inference

Run embeddings, classification, and detection models next to your data — no copies, no lock-in.

Managed autoscaling

Scale from a single laptop-sized worker to a cluster and back down, paying only for what you run.

Submit a job in seconds

A single client, the same identifiers, no infrastructure to operate.

compute.ts
import { createClient } from '@edk/compute'

const compute = createClient(process.env.EDK_API_KEY)

const job = await compute.jobs.run({
  task: 'tiles.build',
  region: 'e2:region/us-ny-nyc',
  zoom: [10, 16],
})

// → streams tiles to your bucket, autoscaled

FROM LOCATION TO JOB

Compute belongs in the same geographic workflow.

Start with a place, feature set, route, or region, then turn that selected geography into a spatial job. EDK keeps the identifiers and outputs usable across search, maps, and analysis instead of making compute a detached back-office step.

01

Start with geography

Search a category, choose an area, or bring your own geometry into the workflow.

02

Run the operation

Count, intersect, aggregate, tile, or run a model using the selected geographic input.

03

Return usable output

Send results back to a map, service, agent, or operational interface with evidence intact.

Compute where your data lives.

Open where it counts. Managed where it helps.