Dendritic Forest Management

The Landscape Package

One JSON file carries a woodlot's corridor layers between the mapping workspace, VergeCommon and your own tools. Lengths are meters and areas are square meters. Coordinates are WGS84 longitude and latitude.

Layers

LayerGeometryProperties that matter
coreAreasPolygondfm_id; core_class: old-growth-candidate, old-growth-verified (needs evidence_id), riparian-core or reserve
retainedPolygonRetained forest: riparian buffers, corridors, retained stands
roadsLine or polygonwidth_m for a centerline, or the package's roadWidthM
waterPolygonOpen water; buffer stream centerlines into polygons first
crossingsPointpassage: verified, assumed or none
treatmentsPolygondfm_id, period, intensity; inside a corridor only with corridor_permitted, a light intensity and a reason
boundaryPolygonOutline of the planning area; carried for reference, not used by the check
parcelsPolygonconsent: covered or none; corridor on covered parcels counts as committed

A minimal package

{
  "dfm_package": "1.0",
  "crs": "EPSG:4326",
  "units": { "length": "m", "area": "m2" },
  "params": {
    "minWidthM": 100,
    "minWidthSource": "Co-op woodland policy, section 4",
    "roadWidthM": 6
  },
  "sources": { "roads": { "title": "County road centerlines", "date": "2026-05-01" } },
  "layers": { "coreAreas": [], "retained": [], "roads": [], "water": [],
              "crossings": [], "treatments": [], "parcels": [], "boundary": [] }
}

Run the check with the open-source dfm-core package. It is not on npm yet; install it from the repository until it is published.

import { checkConnectivity, fromLandscapePackage } from '@viridis/dfm-core';
const result = await checkConnectivity(fromLandscapePackage(pkg));
// result.status is 'pass', 'fail' or 'incomplete', with reasons

JSON Schemas for the package and the result