Initial commit: Sage Kitchen Management App v1.0.0
✨ Features implemented: - Smart inventory tracking with Hive database - Barcode scanning with auto-populated product info - Multiple API fallbacks (Open Food Facts, UPCItemDB) - Smart expiration date predictions by category - Discord webhook notifications (persisted) - Custom sage leaf vector icon - Material Design 3 UI with sage green theme - Privacy Policy & Terms of Service - Local-first, privacy-focused architecture 🎨 UI/UX: - Home dashboard with inventory stats - Add Item screen with barcode integration - Inventory list with expiration indicators - Settings with persistent preferences - About section with legal docs 🔧 Technical: - Flutter 3.35.5 with Riverpod state management - Hive 2.2.3 for local database - Mobile scanner for barcode detection - Feature-first architecture 🤖 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
29
lib/features/settings/models/app_settings.dart
Normal file
29
lib/features/settings/models/app_settings.dart
Normal file
@@ -0,0 +1,29 @@
|
||||
import 'package:hive/hive.dart';
|
||||
|
||||
part 'app_settings.g.dart';
|
||||
|
||||
@HiveType(typeId: 3)
|
||||
class AppSettings extends HiveObject {
|
||||
@HiveField(0)
|
||||
String? discordWebhookUrl;
|
||||
|
||||
@HiveField(1)
|
||||
bool expirationAlertsEnabled;
|
||||
|
||||
@HiveField(2)
|
||||
bool discordNotificationsEnabled;
|
||||
|
||||
@HiveField(3)
|
||||
String defaultView; // 'grid' or 'list'
|
||||
|
||||
@HiveField(4)
|
||||
String sortBy; // 'expiration', 'name', 'location'
|
||||
|
||||
AppSettings({
|
||||
this.discordWebhookUrl,
|
||||
this.expirationAlertsEnabled = true,
|
||||
this.discordNotificationsEnabled = false,
|
||||
this.defaultView = 'grid',
|
||||
this.sortBy = 'expiration',
|
||||
});
|
||||
}
|
Reference in New Issue
Block a user