Dotcat PetCare - Cat Care Assistant
A comprehensive Flutter application for managing your catβs health, reminders, and daily care routines.
π± Features
- Cat Management: Add, edit, and manage multiple cat profiles
- Reminders: Set up recurring reminders for vaccines, medications, food, vet visits, and more
- Weight Tracking: Track your catβs weight over time with visual charts
- Calendar View: View all events in an interactive calendar
- Multi-language Support: Turkish, English, German, Spanish, and Arabic
- Cloud Sync: All data is synced with Firebase (Firestore + Storage)
- Notifications: Local notifications for reminders
- Dark Mode: Full dark mode support
π Authentication
- Google Sign-In
- Email/Password
- Anonymous Sign-In
π Getting Started
Prerequisites
- Flutter SDK (3.10.3 or higher)
- Firebase project with:
- Authentication enabled (Google, Email/Password, Anonymous)
- Firestore Database
- Cloud Storage
- iOS and Android apps configured
Installation
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/dotcat.git
cd dotcat
- Install dependencies:
- Firebase Setup:
- Download
GoogleService-Info.plist from Firebase Console (iOS)
- Download
google-services.json from Firebase Console (Android)
- Place them in:
ios/Runner/GoogleService-Info.plist
android/app/google-services.json
- Configure Firebase Rules:
- Firestore: Copy
firestore.rules to Firebase Console β Firestore β Rules
- Storage: Copy
storage.rules to Firebase Console β Storage β Rules
- Run the app:
π± Build for Production
Android
- Create a keystore:
keytool -genkey -v -keystore ~/dotcat-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias dotcat
-
Update android/app/build.gradle.kts with your keystore configuration
- Build:
flutter build apk --release
# or
flutter build appbundle --release
iOS
- Open
ios/Runner.xcworkspace in Xcode
- Configure signing & capabilities
- Build:
flutter build ios --release
π Project Structure
lib/
βββ core/ # Core utilities, services, constants
βββ data/ # Models and database
βββ features/ # Feature modules
β βββ auth/ # Authentication
β βββ cats/ # Cat management
β βββ reminders/ # Reminder management
β βββ weight/ # Weight tracking
β βββ home/ # Home screen, calendar, settings
βββ widgets/ # Reusable widgets
π§ Configuration
Firebase Setup
- Create a Firebase project at Firebase Console
- Enable Authentication methods:
- Google Sign-In
- Email/Password
- Anonymous
- Create Firestore Database
- Create Cloud Storage bucket
- Configure security rules (see
firestore.rules and storage.rules)
Android Configuration
- Application ID:
com.dotcat.petcare
- Minimum SDK: As per Flutter defaults
- Target SDK: Latest Android SDK
iOS Configuration
- Bundle Identifier:
com.dotcat.petcare
- Minimum iOS Version: 15.0
- Capabilities: Push Notifications
π Important Notes
- API Keys: Never commit
GoogleService-Info.plist or google-services.json to version control
- Signing: Production builds require proper signing configuration
- Firebase Rules: Must be configured in Firebase Console before production use
π Known Issues
- Completion tracking is currently stored locally (SQLite). Cloud sync will be added in a future update.
π License
[Your License Here]
π₯ Contributing
[Contributing guidelines]
π Support
[Support contact information]