Dani 7ab641a3c8 v1.3.0+4: FOSS Compliance + Dark Mode + Enhanced Settings
 Major Features:
- Dark mode toggle with app-wide theme switching
- Sort inventory by Expiration Date, Name, or Location
- Toggle between Grid and List view for inventory
- Export inventory data to CSV with share functionality
- Custom sage leaf app icon with adaptive icon support

🔄 FOSS Compliance (F-Droid Ready):
- Replaced Firebase with Supabase (open-source backend)
- Anonymous authentication (no user accounts required)
- Cloud-first with hosted Supabase as default
- Optional self-hosting support
- 100% FOSS-compliant dependencies

🎨 UI/UX Improvements:
- Dynamic version display from package.json (was hardcoded)
- Added edit buttons for household and user names
- Removed non-functional search button
- Replaced Recipes placeholder with Settings button
- Improved settings organization with clear sections

📦 Dependencies:
Added:
- supabase_flutter: ^2.8.4 (FOSS backend sync)
- package_info_plus: ^8.1.0 (dynamic version)
- csv: ^6.0.0 (data export)
- share_plus: ^10.1.2 (file sharing)
- image: ^4.5.4 (dev, icon generation)

Removed:
- firebase_core (replaced with Supabase)
- cloud_firestore (replaced with Supabase)

🗑️ Cleanup:
- Removed Firebase setup files and google-services.json
- Removed unimplemented features (Recipes, Search)
- Removed firebase_household_service.dart
- Removed inventory_sync_service.dart (replaced with Supabase)

📄 New Files:
- lib/features/household/services/supabase_household_service.dart
- web/privacy-policy.html (Play Store requirement)
- web/terms-of-service.html (Play Store requirement)
- PLAY_STORE_LISTING.md (marketing copy)
- tool/generate_icons.dart (icon generation script)
- assets/icon/sage_leaf.png (1024x1024)
- assets/icon/sage_leaf_foreground.png (adaptive icon)

🐛 Bug Fixes:
- Fixed version display showing hardcoded "1.0.0"
- Fixed Sort By and Default View showing static text
- Fixed ConsumerWidget build signatures
- Fixed Location.displayName import issues
- Added clearAllData method to Hive database

📊 Stats: +1,728 additions, -756 deletions across 42 files

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-04 22:27:42 -04:00

🌿 Sage - Smart Kitchen Management

A beautiful Flutter app for tracking your kitchen inventory and reducing food waste.

Features

Smart Inventory Management

  • Barcode scanning for quick item entry
  • Auto-populated product information from multiple databases
  • Smart expiration date predictions based on food category
  • Visual expiration status indicators

Modern UI

  • Clean, intuitive Material Design 3 interface
  • Sage green theme
  • Custom sage leaf vector icon
  • Smooth animations and transitions

Notifications

  • Local expiration alerts
  • Discord webhook integration for remote notifications
  • Customizable alert settings (persisted!)

Local-First Data

  • All data stored locally using Hive
  • No cloud dependencies
  • Privacy-focused design
  • Fast and offline-capable

Tech Stack

  • Framework: Flutter 3.35.5
  • State Management: Riverpod 2.6.1
  • Database: Hive 2.2.3 (local)
  • Barcode Scanning: mobile_scanner 5.2.3
  • API Integration: Open Food Facts, UPCItemDB
  • Platform: Android (iOS coming soon)

Getting Started

Prerequisites

  • Flutter 3.x installed
  • Android Studio or VS Code
  • Android SDK (for mobile) or Visual Studio (for Windows desktop)

Setup

  1. Clone the repository
  2. Install dependencies:
flutter pub get
  1. Run the app:
# On Android device/emulator
flutter run

# On Windows (for development)
flutter run -d windows

Project Structure

sage/
├── lib/
│   ├── core/              # Core utilities, constants, extensions
│   ├── features/          # Feature modules (inventory, recipes, etc.)
│   ├── services/          # Business logic services
│   ├── data/              # Data layer (local + remote)
│   └── shared/            # Shared widgets and providers
├── assets/                # Images, icons, fonts
└── test/                  # Tests

Documentation

Roadmap

  • Phase 1: Foundation - Basic inventory tracker IN PROGRESS
  • Phase 2: Barcode scanning with Open Food Facts
  • Phase 3: Smart alerts & notifications
  • Phase 4: Recipe management
  • Phase 5: Shopping lists
  • Phase 6: Multi-user & cloud sync
  • Phase 7: Advanced features & polish

Author

Danielle Sapelli

  • Built with ❤️ using Flutter & Claude Code

Contributing

Ideas and suggestions are welcome!

License

TBD


🌿 Making kitchens smarter, one scan at a time!

Description
No description provided
Readme 525 KiB
Languages
HTML 45.6%
Dart 39.1%
C++ 7.9%
CMake 6.1%
Swift 0.8%
Other 0.4%