Field Survey

STILL UNDER CONTRUCTION

Your field notebook, on your phone.

  • Fits any field survey — define your own fields, sections, and data types with a simple template; no coding required
  • Already digital — no retyping when you get back, no transcription errors
  • Instant export — produce a clean spreadsheet, ready to analyze
  • Automatic timestamps — the app fills in the time, no checking your watch
  • Built-in GPS — record coordinates with a tap, no manual noting
  • Photos embedded in records — attach images directly to each observation
  • Works fully offline — no signal needed in the field
Alpha software — use with caution

This app is under active development. Always verify your exports and keep independent backups before relying on FieldSurvey for critical fieldwork. The author takes no responsibility for data loss.

F-Droid Template Gallery Template Builder


How It Works

📄 Template (.yaml) → 📥 Import → 📝 Fill records → 📊 Export (XLSX / ODS)

  1. 📄 Get a template — a .yaml file that defines your project’s structure
  2. 📥 Import it — paste a URL, scan a QR code, or open a local file
  3. 📝 Fill records in the field — log each observation as a Record
  4. 📊 Export when done — get an XLSX or ODS spreadsheet for analysis

A template is a plain YAML file. Example:

Name: Bird Count Survey
Description: Weekly waterbird census at the reserve.
UUID: 482f19b6-9b87-43c9-aa48-aed8349d3b0b
Version: 1
Sections:
  Survey Session:
    Variables:
      Date:
        Type: Date
        AutoNow: True
        Required: True
      Weather:
        Type: Option
        Options:
          - Sunny
          - Cloudy
          - Rainy
        Default: Sunny
      Surveyor:
        Type: Option
        Weight: 127
        Options:
          - Mary
          - Tom
          - Lisa
          - James
        Multiple: True
        Expandable: True
      ObserveRegion:
        Type: PolygonMap
        Required: True
  Bird Record:
    Parent: Survey Session
    SpawnChild: True
    Variables:
      Species:
        Type: Option
        Expandable: True
        Options: [Mallard, Heron, Cormorant, Other]
      Count:
        Type: Int
        Min: 1
        Default: 1
      Photo:
        Type: Photo
        Multiple: True
      Notes:
        Type: Markdown

Full template reference → YAML Format

Supported Variable Types

Type Description
String Free text
Int Integer (optional Min / Max / Default)
Float Decimal number (optional NumValues for consecutive readings, NumDigits for fixed precision)
Boolean Yes / No toggle
Date / Time / DateTime Date/time pickers (AutoNow pre-fills current time)
Option Dropdown / radio (Expandable: add custom entries, Multiple: pick several)
OptionCount Count per option (e.g. species tally)
LocationMap GPS point on a map
PathMap Draw a path on the map
PolygonMap Draw polygon on the map
Photo Camera or gallery (Multiple: allow several photos)
Markdown Formatted notes

and… upcoming types in the future…


Roadmap

Phase Focus Status
KMP Kotlin Multiplatform — iOS (iPad / iPhone) support 📋 Planned
beta Polish — dark mode, localization, better icon 📋 Planned

Support This Project

FieldSurvey is free and open source. If it saves you time in the field, consider buying me a coffee ☕

Ko-fi PayPal


Community

Questions, template help, or feature ideas? Open an issue on Codeberg.

Report a bug / ask a question