[](https://travis-ci.org/mapbox/preprocessorcerer) [](https://codecov.io/gh/mapbox/pre


[wip] Makes magical adjustments to geospatial files
``sh`
perform-preprocessorcery /some/folder/file.tif{"outfile":"/some/folder/eddd5fb92364d75d","parts":1,"descriptions":["Reproject TIFF file to EPSG:3857"]}
This table lists the various preprocessing steps that a file might undergo. These steps are written in the preprocessors folder, each file representing a distinct preprocessing step. Each preprocessor exposes a criteria` function that determines whether or not it should act on the incoming file. The order of this list is the order in which preprocessors would be applied to any single file that matches multiple criteria.
preprocessor | criteria | description
--- | --- | ---
tif-toBytes | TIF file with 16-bit pixels | Scale 16-bit TIFF files to 8-bit
tif-reproject | TIF file that is not in EPSG:3857 | Reproject TIFF file to EPSG:3857
tif-overviews | TIF file | Generate overviews for TIFF files
shp-index | Shapefile that has no mapnik index | Add a spatial index to shapefile
geojson-bom | GeoJSON string with a BOM char | Remove a byte-order-mark from a geojson string
spatial-index | GeoJSON or CSV has no mapnik index | Add spatial index (*.index) to GeoJSON or CSV
splitter | criteria | description
--- | --- | ---
mbtiles-byTiles | mbtiles file | 100,000 tiles per part, up to 50 parts max
serialtiles-byTiles | serialtiles file | 200,000 tiles per part, up to 50 parts max
default | none of above criteria matched | Split into parts based on file size