Geo Data Collector archive

Turn field observations into usable GIS features

Capture asset, site and survey-support observations with two complementary tools: a server-driven form builder for standardized team workflows and an ad-hoc attribute editor for fast offline capture without setup.

Form Builder canvas

Server-driven form builder

Define forms as JSON (sections → fields) and render them natively with Eureka. Design forms once, distribute to your whole team, and update without an app release.

  • Visual drag-and-drop form designer
  • JSON model: sections, fields, types, labels, classes
  • Native iOS rendering with selectors & validation
Ad-hoc attribute editor

Ad-hoc attribute editor

Draw a point, line, or polygon and attach typed attributes on the spot—no server or form definition needed. Ideal for reconnaissance, inspection and opportunistic mapping.

  • Point · LineString · Polygon geometries
  • 12 typed attribute fields
  • Saved as GeoJSON, convertible to GeoPackage
12 attribute types

Typed fields for real field data

Give field values a consistent meaning at the point of capture so GIS handoff and review require less cleanup.

Name

Description

Address

Date & Time

Checkbox

Phone Number

Website

Number

Degrees

Altitude

Dropdown

Tab View

Attribute grid of captured line features
Attribute Table / Grid

Browse & edit features like a spreadsheet

Inspect and edit feature attributes from GeoPackage and GeoJSON in a spreadsheet-style grid, powered by SwiftDataTables and an embedded MMSpreadsheetView component.

  • GeoPackage vector table grid
  • GeoJSON feature attribute grid
  • Generic grid for search results & placemarks
  • Sort, scan, and jump from a row to the feature on the map
Under the hood

Forms are just JSON

A simple, portable schema — version it, share it, and render it natively.

{
  "id": "asset-inspection",
  "title": "Asset Inspection",
  "allows_edit": true,
  "sections": [
    {
      "title": "Details",
      "fields": [
        { "name": "site",     "label": "Site name", "type": "text" },
        { "name": "height_m", "label": "Height",    "type": "number" },
        { "name": "condition","label": "Condition", "type": "dropdown" }
      ]
    }
  ]
}

Capture better data in the field

Structured forms, fast offline attributes and spreadsheet-style feature review.