TerraManager

Lokale und datenschutzfreundliche Terrarienverwaltung

View the Project on GitHub CodefrogCF/TerraManager

TerraManager Roadmap

Current Status

Latest completed release milestone:

v1.10.4 – Animal Detail & Rehouse Fixes

The current development version is maintained in pubspec.yaml; published versions are listed in GitHub Releases and CHANGELOG.md.

Completed development areas:

v0.7.1 implementation and release validation are complete.

v0.8.0 implementation, documentation, Android/Web regression validation and release are complete.

v0.9.0 implementation, documentation, Android/Web regression validation and release are complete.

v0.10.0 implementation, documentation, Android/Web regression validation and release are complete.

v0.11.0 implementation, documentation, automated testing, Android/Web regression validation and release packaging are complete.

v0.12.0 implementation, documentation, automated testing, Android/Web regression validation and release packaging are complete.

v0.13.0 implementation, documentation, automated testing, Android/Web regression validation and release packaging are complete. Issues #74, #75 and #76 provide the persistent per-Animal configuration, deterministic calculation and in-app presentation required for Feeding Reminders. Issue #77 completed the publication of release build 0.13.0+27.

v0.14.0 implementation, documentation, automated testing, supported builds and manual regression validation are complete. Issues #81 and #82 provide consistent Animal form labels and direct Animal creation from Box details. Issues #83 and #85 add persistent, backup-compatible Box and Animal Overview sorting with contextual detail navigation. Issue #86 completes release build 0.14.0+32.

v0.14.1 implementation, documentation, automated testing, supported builds and manual regression validation are complete. The patch corrects the reminder reference for existing feeding history and reduces Box sorting to the two meaningful Box-number directions while preserving legacy settings and backups.

v1.0.0 implementation, documentation, automated testing, supported builds, manual regression and publication are complete. It establishes the stable MVP baseline without changing Database Schema Version 5 or Portable Backup Format Version 2.

Issue #89 introduces the permanent com.codefrog.terramanager application identity and replaces remaining Flutter placeholder platform metadata. Android users of builds through v0.14.1 migrate through the existing portable backup and restore workflow because Android treats the permanent identifier as a new application.

Issue #90 introduces fail-closed Android production signing. Release builds load credentials only from an ignored local file or explicit environment variables, while Debug builds remain independent of release secrets. Creating, backing up and validating the private production key remains a local release owner task.

Issue #91 establishes GPL-3.0-or-later as the public project licence and adds the privacy, permission, installation, update, support, security and contribution information needed for a public release. Historical v0.11.0 and v0.12.0 publication actions now reflect their completed release state.

Issue #92 adds pinned GitHub Actions quality gates and documents the supported toolchain and dependency baseline. Android production signing stays outside CI, and the remaining Built-in Kotlin warning is tracked as an upstream plugin migration dependency rather than being hidden by unsafe configuration.

Issue #93 completed release 1.0.0+39 without expanding the MVP scope. Database Schema Version 5 and Portable Backup Format Version 2 remain unchanged after the final Android, Web, backup, localization, signing and release-artifact regression.

v1.1.0 is now the active milestone for detail and workflow polish. Development build 1.0.2+43 starts Issue #94 by displaying current Animal pictures in the Box-detail assignment list while preserving the existing fallback and navigation behaviour.

Development build 1.0.3+44 implements Issue #95 by moving the permanent QR identifier and PNG export into a final Box-detail section and removing the former single-code printing workflow without changing QR identity or scanning.

Development build 1.0.4+45 implements Issue #96 by adding optional multiline Box notes, Database Schema Version 6 persistence and backward-compatible Backup Format Version 2 export and restore.

Development build 1.0.5+46 implements Issue #97 by moving Box deletion from the detail app bar to the bottom of Edit Box. Saved and deleted edit results are handled separately so deletion closes the detail route and refreshes the originating overview, including after contextual Box navigation.

Development build 1.0.6+47 implements the detail and workflow changes for Issue #98. Latest Feeding is now an explicit history shortcut, and active Animal details expose a dedicated Feeding Reminder settings action. The ordinary Edit Animal workflow preserves existing reminder configuration while the dedicated page owns reminder validation and persistence.

Development build 1.0.7+48 implements Issue #99. The former group of accent chips is replaced by one compact localized dropdown without changing the stored preference, and an About TerraManager dialog now reports the installed version, build number and developer under Legal & Privacy.

Development build 1.0.8+49 implements Issue #100. Restore confirmation keeps the pre-restore safety backup enabled by default and allows it to be disabled for the current operation. Skipping it avoids an unnecessary export for an empty database without weakening validation or transactional replacement.

Release 1.1.0+50 brings the completed Issue #94–#100 changes together with the final automated, migration, backup, Android and Web regression from Issue #101.

Development build 1.1.1+51 implements tester feedback for optional Box names and alphabetical name sorting while retaining Box numbers, legacy sort preferences and Portable Backup Format Version 2 compatibility.

Release 1.4.0+59 completes the Animal Profiles and Input Quality milestone through Issues #108–#113. Database Schema Version 9 and Portable Backup Format Version 2 form the compatibility baseline for all later releases.

Release 1.5.0+60 completes Issues #114 and #115. Animal and Box overviews provide localized long-press and secondary-click quick actions. Duplicate records receive independent identities and media; Box duplicates receive new permanent QR identifiers, and Animal duplicates omit source feeding history.

Release 1.6.0+62 completes Issues #116 and #117. All three Settings export actions reuse one active/archived Box checklist. Selected QR codes can be saved as individual PNG files, one ZIP archive or labeled, paginated A4 PDF sheets with a selectable 6–20 mm code size. ZIP and PDF generation remains local and adds no broad storage, media or network permission.

Release 1.6.1+63 completes Issues #122–#126. Animal History displays stored pictures with the established fallback, PDF QR sizing uses only the accessible integer slider, and Weight supports multiline content. Privacy and licence views follow English or German while remaining offline. Overview sort menus now contain one reversible entry per criterion while keeping every persisted and portable enum value compatible. Schema Version 9, Backup Format Version 2 and the existing permission boundary remain unchanged.

Release 1.7.0+64 completes Issues #127 and #128. Animals store a required category and optional compatible subcategory from the stable Issue #127 taxonomy. Animal Overview can group the complete taxonomy under localized, accessible headings while retaining natural A–Z row order and contextual navigation. Schema Version 10 migrates existing Animals to Other without a subcategory; Backup Format Version 2 remains backward compatible.

Release 1.7.1+65 moves the optional temperature-zone note to its owning Box and advances the database from the released Schema Version 10 snapshot to Schema Version 11. Existing values transfer deterministically without replacing a populated Box value. The patch also shortens the individual Box QR export description and separates the PNG, ZIP and PDF actions with standard Settings dividers. Backup Format Version 2 and device permissions remain unchanged.


v0.1.0 – Foundation

Status: Completed

Database


v0.2.0 – User Interface

Status: Completed


v0.3.0 – QR Code

Status: Completed


v0.4.0 – Platform Support

Status: Completed

Android

Web

iOS

iOS validation is currently deferred because no macOS development environment or physical iOS test device is available.


v0.5.0 – Usability & Settings

Status: Completed

Box Detail Improvements

Animal Lifecycle

Animal Detail Improvements

Settings

Release


v0.6.0 – Backup & Restore

Status: Completed

Backup Format

Backup

Restore

Platform Support

Release


v0.7.0 – Editing & Overview

Status: Completed

Boxes

Feeding

Overview

Release


v0.7.1 – Maintenance

Status: Completed

Overview

Release


v0.8.0 – Contextual Navigation

Status: Completed

Detail Navigation

Release


v0.9.0 – Feeding Workflow & Media

Status: Completed

Media

Feeding Mode

Release


v0.10.0 – Localization

Status: Completed

Localization Infrastructure

Language Support

Release


v0.11.0 – Personalization & Capture

Status: Completed

Preferred Animal Name

Scanner Torch Controls

Direct Camera Capture

Release


v0.12.0 – Media Optimization

Status: Completed

Picture Cropping — Issue #80

Image Storage Optimization

For an existing data set with 44 Boxes, 45 Animals, 20 FeedingEvents and 67 pictures, normalization reduced the portable backup from approximately 140 MB to 22.7 MB. That is about 117.3 MB or 83.8% smaller, reducing the archive to roughly one sixth of its previous size.

Release


v0.13.0 – Feeding Reminders

Status: Completed

Per-Animal Configuration — Issue #74

Reminder Calculation — Issue #75

In-App Reminder Presentation — Issue #76

Release — Issue #77


v0.14.0 – Pre-1.0 UX Polish

Status: Completed

Animal Form Labels — Issue #81

Add Animal from Box Details — Issue #82

Box Overview Sorting — Issue #83

Animal Overview Sorting — Issue #85

Release — Issue #86


v0.14.1 – Post-release Fixes

Status: Completed

Feeding Reminder Reference

Box Overview Sorting Simplification

Patch Release


v1.0.0 – MVP Release

Status: Completed

Application Identity and Platform Metadata — Issue #89

Android Production Signing — Issue #90

Public Release Documentation — Issue #91

Feeding Mode Scanner Return — Pre-release Fix

Quality Gates and Toolchain Baseline — Issue #92

Stable MVP Release — Issue #93


v1.1.0 – Detail & Workflow Polish

Status: Completed

Assigned Animal Thumbnails — Issue #94

Box QR Information — Issue #95

Box Notes — Issue #96

Edit Box Deletion — Issue #97

Animal Feeding History and Reminder Actions — Issue #98

About Information and Compact Accent Selection — Issue #99

Optional Pre-Restore Safety Backup — Issue #100

v1.1.0 Release — Issue #101


v1.1.1 – Optional Box Names

Status: Completed

Tester Feedback Update


v1.2.0 – Box Lifecycle & History

Status: Completed

Box Lifecycle Persistence — Issue #102

Box Archive and Restore Workflows — Issue #103

Box History — Issue #104

v1.2.0 Release — Issue #105


v1.3.0 – Primary Page Navigation

Status: Completed

Swipe between Primary Pages — Issue #106

v1.3.0 Release — Issue #107


v1.4.0 – Animal Profiles and Input Quality

Status: Completed

Display Box names in Animal forms — Issue #108

Natural name sorting — Issue #109

Environmental input limits — Issue #110

Hermaphrodite / other sex — Issue #111

Optional extended Animal characteristics — Issue #112

Offline application license — Issue #113

v1.4.0 Release


v1.5.0 – Overview Quick Actions

Status: Completed

Animal and Box context menus — Issue #114

Independent record duplication — Issue #115

v1.5.0 Release


v1.6.0 – Batch QR Export

Status: Completed

Save selected Box QR codes — Issue #116

Export selected QR codes as an A4 PDF sheet — Issue #117

v1.6.0 Release


v1.6.1 – UX Consistency & Localization

Status: Completed

Archived Animal thumbnails — Issue #122

PDF QR-size controls — Issue #123

Multiline Animal Weight — Issue #124

Directional sort toggles — Issue #126

v1.6.1 Release


v1.7.0 – Animal Taxonomy & Category Views

Status: Completed

Persistent Animal taxonomy — Issue #127

Category-grouped Animal Overview — Issue #128

v1.7.0 Release


v1.7.1 – Enclosure Notes & Migration

Status: Completed

Box-owned temperature-zone notes

QR Settings polish

v1.7.1 Release


v1.7.2 – Media Galleries

Status: Completed

Animal and Box picture histories — Issue #78

v1.7.2 Release


v1.8.0 – Animal Details, Sorting & Environmental Data

Status: Completed

Grouped taxonomy labels — Issue #129

Animal detail priorities — Issues #130 and #132

Animal nighttime temperature — Issue #131

Box ordering — Issues #133 and #134

v1.8.0 Release


v1.9.0 – Animal Input & History

Status: Completed

Paired environmental inputs — Issues #136 and #137

Scheduled feeding on Animal details — Issue #138

Numeric Animal weight history — Issue #139

Additional-characteristic order — Issue #140

v1.9.0 Release


v1.9.1 – Overview & Edit Box Refinements

Status: Completed

Independent Animal category view — Issue #142

Edit Box QR information order — Issue #143

v1.9.1 Release


v1.10.0 — Animal Workflow & History Polish

Status: Completed


v1.10.1 — Symmetric Archive History

Status: Completed


v1.10.2 — Archive Actions & Animal Detail Preferences

Status: Completed


v1.10.3 — QR Rehouse Mode

Status: Completed


v1.10.4 — Animal Detail & Rehouse Fixes

Status: Completed


Website 1.0 – Homepage, Downloads & Guides

Status: Completed

TerraManager project homepage — Issue #119


Shared Care LAN mode — Issues #156–#171

Status: Implemented; operator field checks passed on one Raspberry Pi

The deployment checklist remains necessary for each new installation and material update; this is not cloud sync or direct synchronization with the standalone Android collection.


v1.14.0 — Shared Care Administration & Audit

Issue #176 allows a first portable import without a safety download only when all server collection tables are empty. Administrator authorization, CSRF, explicit confirmation, archive validation and transactional replacement remain required. The server rechecks emptiness while excluding caregiver writes. Populated collections continue to require a current safety copy.

Issue #177 adds transactional server audit metadata for collection and account changes, stable actor identities, 365-day retention and preservation across portable restore. Audit persistence failure rolls back the corresponding change. Shared Care browser Back also returns through detail, scanner and dialog routes.

Issue #178 adds Settings → Server → Manage accounts with username/role edits, password reset, activation changes and confirmed removal. Changes revoke the affected user’s sessions. Server transactions protect the final active administrator and retain audit identity after removal. QR Feeding Mode now shows current Animal thumbnails in standalone and Shared Care selection lists.

Issue #179 adds the administrator Audit subsection, metadata-only history, filters and pagination in Shared server Settings.

v1.14.1 — Shared Care correctness, permissions and account preferences

v1.14.2 — Animal workflow and media parity

v1.14.3 — Store Presence Refresh

Shared Care code organization — Issue #185

Future Development

Possible later development areas include: