SpadeDocs
DocsHomeGitHub
Getting Started
Installation
Your First Pipeline
Your First Block
Your First R Block
Core Concepts
Blocks
Block Collections
Pipelines
Map/Reduce
Execution Model
Input Resolution
Secrets
Pipeline Reference
Pipeline Format
Input References
Short Codes and Hand-Authoring
Pipeline Validation
Map/Reduce Pipelines
Pipeline Examples
CLI Reference
spade setup
spade init
spade add
spade check
spade install
spade run
spade publish
spade login
spade secret
Block Development Libraries
Python
Quickstart
Types
Handler Functions
Manifest Generation
Examples
R
Quickstart
Types
Handler Functions
Manifest Generation
Examples
TypeScript
Quickstart
Types
Handler Functions
Manifest Generation
Examples
Go
Quickstart
Types
Handler Functions
Manifest Generation
Examples
Rust
Quickstart
Types
Handler Functions
Manifest Generation
Examples
Block Catalog
base
base.filter_rows
base.select_columns
base.aggregate
base.group_by
base.csv_to_parquet
base.parquet_to_csv
base.map_files
base.map_list
base.map_range
base.reduce_collection
base.reduce_stack
base.reduce_join
data
data.read
data.read_collection
data.write
data.write_collection
data.list
data.stat
data.census_acs
data.census_tiger
data.naturalearth_raster
data.naturalearth_vector
data.nhd
data.nlcd
data.osm_extract_pbf
data.osm_extract_shp
data.prism
data.ssurgo
data.usgs_3dep
data.fia
gdal
gdal.translate
gdal.warp
gdal.merge
gdal.build_vrt
gdal.add_overviews
gdal.tile_index
gdal.nearblack
gdal.tile
gdal.retile
gdal.rasterize
gdal.polygonize
gdal.contour
gdal.calc
gdal.sieve
gdal.fill_nodata
gdal.proximity
gdal.grid
gdal.viewshed
gdal.clip_raster_by_vector
gdal.clip_raster_by_extent
gdal.hillshade
gdal.slope
gdal.aspect
gdal.color_relief
gdal.tri
gdal.tpi
gdal.roughness
gdal.info
gdal.location_info
gdal.compare
gdal.vector_translate
gdal.vector_merge
gdal.vector_tile_index
gdal.vector_union
gdal.vector_intersection
gdal.vector_difference
gdal.vector_sym_difference
gdal.vector_identity
gdal.vector_clip
gdal.vector_erase
gdal.vector_update
gdal.vector_info
gdal.srs_info
gdal.transform_points
gdal.map_raster_tiles
gdal.reduce_mosaic
gdal.reduce_vrt
Tutorials
Building a Block
Writing Pipelines
Parallel Processing with Map/Reduce
Testing Blocks

Core Concepts

Spade is built around a few core ideas: blocks as isolated units of computation, pipelines as declarative workflows connecting blocks, and a runtime that handles scheduling, caching, and parallel execution. This section explains each concept in detail.

Blocks

Self-contained units of computation that form the building blocks of Spade pipelines.

Read →

Block Collections

Repositories of related blocks sharing a language and build system.

Read →

Pipelines

Declarative YAML workflows connecting blocks into a directed acyclic graph.

Read →

Map/Reduce

Parallel processing for collections of data using fan-out and collection patterns.

Read →

Execution Model

How Spade schedules, executes, and caches block invocations.

Read →

Input Resolution

How Spade matches block outputs to inputs using type matching and explicit references.

Read →

Secrets

How blocks receive credentials securely with get_secret.

Read →
© 2026 Spade Projectspade.app · GitHub♠