Dataversa
Mobile survey collection with offline support, media capture, and later synchronization.
Project Highlights
Overview
jhef@root: ~/dataversa-mobile$ cat README.md
Dataversa is a mobile application built with Flutter for structured data collection in research and field surveys. The app downloads questionnaires from a remote API and stores them locally, allowing researchers to conduct interviews and record responses even without an internet connection. Forms are dynamically rendered within the application and support relevance rules, enabling questions to appear or be hidden based on previous answers. The platform supports a wide range of field types, including photo capture, geolocation, date inputs, multiple choice, ranking, matrix questions, and open text responses. All responses are stored locally using Isar, allowing users to manage and filter collected data offline before synchronizing it with the remote platform. The application also includes export and backup features, generating ZIP files containing JSON data and collected images that can be easily shared. The project also includes native configuration for Android and iOS builds and integration with APIs compatible with the LimeSurvey RemoteControl pattern for questionnaire synchronization and response submission.
Stack
jhef@root: ~/dataversa-mobile$ ls ./tech
// Mobile frontend
// Local data
// Integrations
// Build and tooling
Key Features
Dynamic forms
Questionnaire rendering with multiple question types, required fields, and relevance rules.
Survey catalog
Download and local organization of surveys, groups, questions, and properties from the remote API.
Offline/online sync
Responses stay on-device until upload, with session refresh and record and file synchronization.
Local storage and backup
Isar persistence plus ZIP backup generation containing structured JSON and captured images.
Authenticated session
Username and password login with a remote session key stored locally for re-authentication.
Response management
Listing, search, sorting, status filters, and delete or edit flows for responses per survey.
Delivery Milestones
Field foundation
Built the Flutter foundation for field operations, including core navigation, dependency injection, and session-key-based authentication.
Offline survey catalog
Implemented survey, group, question, and metadata downloads with local Isar persistence for offline execution.
Interview engine
Built a dynamic form engine with relevance rules, media capture, geolocation, and multiple response types.
Submission and operational resilience
Consolidated response management with filters, incremental uploads, ZIP backups, and release hardening for the mobile operation.