amoriai/lib/core/constants/app_constants.dart

50 lines
1.8 KiB
Dart

class AppConstants {
// App Info
static const String appName = 'AMORI Menu Recommender';
static const String appVersion = '1.0.0';
static const String kafeName = 'Amori Kofie Kediri';
// Firebase Collections
static const String usersCollection = 'users';
static const String recommendationsCollection = 'recommendations';
static const String menusCollection = 'menus';
// Shared Preferences Keys
static const String isFirstLaunchKey = 'is_first_launch';
static const String userPreferencesKey = 'user_preferences';
static const String themeKey = 'theme_mode';
// Hive Boxes
static const String userPreferencesBox = 'user_preferences';
static const String recommendationsBox = 'recommendations';
static const String menusBox = 'menus';
// API Keys (akan diisi dari environment variables)
static const String geminiApiKey = String.fromEnvironment('GEMINI_API_KEY');
// Image Picker Settings
static const int maxImageWidth = 1024;
static const int maxImageHeight = 1024;
static const int imageQuality = 85;
// OCR Settings
static const double ocrConfidenceThreshold = 0.7;
// UI Constants
static const double defaultPadding = 16.0;
static const double smallPadding = 8.0;
static const double largePadding = 24.0;
static const double borderRadius = 12.0;
static const double smallBorderRadius = 8.0;
static const double largeBorderRadius = 20.0;
// Animation Durations
static const Duration shortAnimation = Duration(milliseconds: 200);
static const Duration mediumAnimation = Duration(milliseconds: 300);
static const Duration longAnimation = Duration(milliseconds: 500);
// Network Timeouts
static const Duration connectionTimeout = Duration(seconds: 30);
static const Duration receiveTimeout = Duration(seconds: 30);
}