Add Flutter companion app skeleton with local meal logging
Milestone 1 of the diet-app-as-wise-balloon plan: a phone-native way to
log meals away from the PC, sharing the exact on-disk JSON shape
diet_guard already uses (same field names, no translation layer).
- lib/models/: 1:1 Dart mirrors of the Python dataclasses (Nutrition,
FoodEntry, MealItem, FoodBankRecord, Slot), including the per-100g/
amount-eaten portion scaling that matches _resolve.resolve_nutrition's
semantics exactly.
- lib/services/log_storage_service.dart: plain-JSON persistence to
food_log.json's exact shape (no sqflite -- the canonical format
already is this JSON).
- lib/services/foodbank_service.dart: ports _foodbank.py's upsert/fuzzy
search logic for autocomplete.
- lib/screens/: log_meal_screen.dart (single-item logging) and
meal_builder_screen.dart (composite multi-item meals, logging full
per-component macros via the new components field).
Verified end-to-end on a physical device (BL9000): built, installed,
logged a real meal through the UI. 77 Flutter tests passing, `flutter
analyze` clean against very_good_analysis.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FU3f5KQ1GHXsbbSecfVEyF
2026-06-22 18:22:42 +02:00
|
|
|
# This file tracks properties of this Flutter project.
|
|
|
|
|
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
|
|
|
|
#
|
|
|
|
|
# This file should be version controlled and should not be manually edited.
|
|
|
|
|
|
|
|
|
|
version:
|
|
|
|
|
revision: "c9a6c484230f8b5e408ec57be1ef71dee1e77020"
|
|
|
|
|
channel: "stable"
|
|
|
|
|
|
|
|
|
|
project_type: app
|
|
|
|
|
|
|
|
|
|
# Tracks metadata for the flutter migrate command
|
|
|
|
|
migration:
|
|
|
|
|
platforms:
|
|
|
|
|
- platform: root
|
|
|
|
|
create_revision: c9a6c484230f8b5e408ec57be1ef71dee1e77020
|
|
|
|
|
base_revision: c9a6c484230f8b5e408ec57be1ef71dee1e77020
|
2026-06-22 22:42:27 +02:00
|
|
|
- platform: linux
|
Add Flutter companion app skeleton with local meal logging
Milestone 1 of the diet-app-as-wise-balloon plan: a phone-native way to
log meals away from the PC, sharing the exact on-disk JSON shape
diet_guard already uses (same field names, no translation layer).
- lib/models/: 1:1 Dart mirrors of the Python dataclasses (Nutrition,
FoodEntry, MealItem, FoodBankRecord, Slot), including the per-100g/
amount-eaten portion scaling that matches _resolve.resolve_nutrition's
semantics exactly.
- lib/services/log_storage_service.dart: plain-JSON persistence to
food_log.json's exact shape (no sqflite -- the canonical format
already is this JSON).
- lib/services/foodbank_service.dart: ports _foodbank.py's upsert/fuzzy
search logic for autocomplete.
- lib/screens/: log_meal_screen.dart (single-item logging) and
meal_builder_screen.dart (composite multi-item meals, logging full
per-component macros via the new components field).
Verified end-to-end on a physical device (BL9000): built, installed,
logged a real meal through the UI. 77 Flutter tests passing, `flutter
analyze` clean against very_good_analysis.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FU3f5KQ1GHXsbbSecfVEyF
2026-06-22 18:22:42 +02:00
|
|
|
create_revision: c9a6c484230f8b5e408ec57be1ef71dee1e77020
|
|
|
|
|
base_revision: c9a6c484230f8b5e408ec57be1ef71dee1e77020
|
|
|
|
|
|
|
|
|
|
# User provided section
|
|
|
|
|
|
|
|
|
|
# List of Local paths (relative to this file) that should be
|
|
|
|
|
# ignored by the migrate tool.
|
|
|
|
|
#
|
|
|
|
|
# Files that are not part of the templates will be ignored by default.
|
|
|
|
|
unmanaged_files:
|
|
|
|
|
- 'lib/main.dart'
|
|
|
|
|
- 'ios/Runner.xcodeproj/project.pbxproj'
|