Skip to content

Releases: OpenDataEnsemble/ode

v1.0.1-alpha.5

26 Mar 09:16
913a858

Choose a tag to compare

v1.0.1-alpha.5 Pre-release
Pre-release

What's Changed

  • fix(tokens): commit dist/ and guard prepare script for F-Droid compat… by @najuna-brian in #575

Full Changelog: v1.0.1-alpha.4...v1.0.1-alpha.5

v1.0.1-alpha.4

24 Mar 16:43
8f8924c

Choose a tag to compare

v1.0.1-alpha.4 Pre-release
Pre-release

What's Changed

Full Changelog: v1.0.1-alpha.2...v1.0.1-alpha.4

v1.0.1-alpha.3

24 Mar 13:34
2ddff93

Choose a tag to compare

v1.0.1-alpha.3 Pre-release
Pre-release

What's Changed

  • fix: add F-Droid changelog and remove binary test fixtures by @najuna-brian in #572

Full Changelog: v1.0.1-alpha.1...v1.0.1-alpha.3

v1.0.1-alpha.2

24 Mar 11:45
2ddff93

Choose a tag to compare

v1.0.1-alpha.2 Pre-release
Pre-release

What's Changed

  • fix: add F-Droid changelog and remove binary test fixtures by @najuna-brian in #572

Full Changelog: v1.0.1-alpha.1...v1.0.1-alpha.2

v1.0.1-alpha.1

24 Mar 08:18
db08552

Choose a tag to compare

v1.0.1-alpha.1 Pre-release
Pre-release

What's Changed

  • fix(formulus): update gradle version by @r0ssing in #568
  • feat(formulus): move fastlane to parent and add images by @r0ssing in #569
  • fix(cli): correct api URL handling in CLI by @r0ssing in #570
  • feat(formulus): bump version by @r0ssing in #571

Full Changelog: v1.0.0...v1.0.1-alpha.1

v1.0.0 - Young Ossicone

22 Mar 18:59
da88b01

Choose a tag to compare

ODE v1.0.0 - Young Ossicone

hello

We’re excited to introduce the first stable release of Open Data Ensemble (ODE) — a flexible toolkit for building and running custom data collection solutions.

ODE lets you define your own instruments, collect data across devices, and keep everything in sync with minimal setup.


ensemble2

🚀 Highlights

  • Modular suite: mobile app, backend, and CLI
  • Offline-first data collection with sync
  • Custom app support (HTML + JavaScript)
  • Simple deployment (Docker-based backend)
  • Quick start in under 10 minutes

Getting Started

gettingstart

You can have your own Synkronus server running in under 10 minutes.

Find our Quick Start install guide here

We also include a simple demo showing how to build a longitudinal custom_app to get you started quickly.

Find our 'first app' tutorial here


🧩 Components

Synkronus

A lightweight server component for synchronization and management.

  • Distributed as a Docker image
  • User management (admin, read-write, read-only)
  • Manage and serve your custom_app
  • Data export capabilities
  • Built-in web interface

Formulus

Mobile app for running forms and collecting observations.

  • JSONForms-based questionnaires
  • Offline-first data collection
  • Bi-directional sync with Synkronus
  • API available to your custom_app

Synkronus CLI

Command-line utility for automation and server interaction.

  • Deploy forms and custom_app versions
  • Scriptable workflows
  • Ideal for CI/CD pipelines

❤️ Thanks

This release would not have been possible without the incredible community around ODE.
The energy, feedback, and contributions have been amazing.

ensemble

🔗 Links

v1.0.0-rc.9

22 Mar 13:11
da88b01

Choose a tag to compare

v1.0.0-rc.9 Pre-release
Pre-release

What's Changed

  • fix(formulus): HelpScreen layout standardized by @r0ssing in #563
  • feat(formulus): Remove blurred background by @r0ssing in #564
  • feat(formulus): improved geolocation handling by @r0ssing in #565
  • feat(synkronus): Standardize API routes with '/api' prefix and update tests by @r0ssing in #566
  • feat(sync): observation metadata, tags, exports, and Formulus LWW tagging by @r0ssing in #567

Full Changelog: v1.0.0-rc.8...v1.0.0-rc.9

v1.0.0-rc.8

22 Mar 04:28
94c34bd

Choose a tag to compare

v1.0.0-rc.8 Pre-release
Pre-release

What's Changed

  • feat(formplayer): UX improvements by @r0ssing in #560
  • refactor(synkronus): Update data directory structure and configuration by @r0ssing in #561
  • feat(cli): add CLI install scripts and update README by @r0ssing in #559
  • feat(formulus): Add export functionality by @r0ssing in #562

Full Changelog: v1.0.0-rc.7...v1.0.0-rc.8

v1.0.0-rc.7

21 Mar 14:05
4dad69e

Choose a tag to compare

v1.0.0-rc.7 Pre-release
Pre-release

What's Changed

  • feat(formulus): dark dividers by @IamLRBA in #552
  • fix(formplayer): keep Next/Previous above keyboard with visual viewpo… by @IamLRBA in #551
  • test(WatermelonDBRepo): add regression test for author and deviceId c… by @r0ssing in #554
  • chore: Move /pr-description skill to project root by @r0ssing in #556
  • fix(formulus): Fix app bundle button enabled/disabled confusion by @r0ssing in #555
  • fix: formulus/Various minor fixes by @r0ssing in #557
  • fix(synkronus): App-bundle versioning bug by @r0ssing in #558

Full Changelog: v1.0.0-rc.6...v1.0.0-rc.7

v1.0.0-rc.6

20 Mar 20:10
37459c4

Choose a tag to compare

v1.0.0-rc.6 Pre-release
Pre-release

What's Changed

  • feat: settings notifee camera by @r0ssing in #538
  • feat: Sanitize polluted observations by @r0ssing in #539
  • docs(readme): update readme files by @Bahati308 in #533
  • feat(formplayer): mobile IME navigation and progress bar controls by @r0ssing in #541
  • feat(formulus): better error messages by @r0ssing in #540
  • feat(formplayer): add observationId support in handleSubmission by @r0ssing in #542
  • feat: SBOM generator by @r0ssing in #544
  • fix(sync): record attachment ops, stabilize observation ids, and harden tests by @r0ssing in #547
  • refactor(sync): centralize sync status logic across observation compo… by @r0ssing in #548
  • feat(formulus): fix failing test suites and enabled npm test in ci/cd by @r0ssing in #549
  • feat(formulus): patch Android build.gradle to disable minification fo… by @r0ssing in #550

Full Changelog: v1.0.0-rc.4...v1.0.0-rc.6