mirror of
https://gitlab.com/Zer0interrupt/recipe-manager.git
synced 2026-11-02 07:28:25 -05:00
2.4 KiB
2.4 KiB
ForkFolio Mobile 📱🍳
Cross-platform mobile application for ForkFolio built with Flutter, featuring deep Android Share Target ingestion, multimodal Gemini Vision Camera Scanning, and distraction-free Cook Mode.
✨ Features
- Interactive Share Target (
ACTION_SEND):- Tap "Share" from Chrome, Instagram, TikTok, Reddit, or YouTube directly to ForkFolio.
- Pops an interactive bottom sheet that sanitizes URLs, extracts captions, scrapes details, and lets you preview & tag before saving.
- Camera Recipe Scanner:
- Point the camera at physical cookbooks, magazine pages, or handwritten recipe cards.
- Direct ingestion into ForkFolio's
POST /api/recipes/scan-photopowered by server-side Gemini 2.5 Flash Vision.
- Kitchen Cook Mode:
- Automatic
Wakelockkeeps the screen awake so you don't touch your phone with flour or messy hands. - Large, counter-readable typography with swipeable step cards.
- Live serving size scaling (0.5x, 1x, 1.5x, 2x) recalculating ingredient amounts on the fly.
- Integrated cooking timers with audible alerts.
- Automatic
- Hardware-Backed Persistent Authentication:
- Connects using
ff_m_...device tokens stored in Android Keystore (EncryptedSharedPreferences) or iOS Keychain. - Sliding 90-day inactivity expiration.
- One-click remote device revocation via ForkFolio web settings.
- Connects using
🚀 Getting Started
1. Prerequisites
- Flutter SDK (version
>= 3.2.0) - Android Studio with Android SDK (API 34+) or VS Code with Flutter extension
- An active ForkFolio instance accessible over HTTPS
2. Install Dependencies
cd forkfolio-mobile
flutter pub get
3. Run in Development
Connect an Android device or launch an emulator, then run:
flutter run
4. Build Release APK
flutter build apk --release
The resulting APK will be located at:
build/app/outputs/flutter-apk/app-release.apk
🔒 Security & Networking
- Server Connection: Enter your public HTTPS domain (e.g.
https://recipes.yourdomain.com). - Credentials: Log in once with your standard username/password. The app automatically registers with your device model name (e.g. "Google Pixel 8 Pro") and receives an encrypted persistent token.
- Revocation: At any time, you can visit the ForkFolio web app, open Settings -> Linked Mobile Devices, and tap "Revoke" to immediately cut off mobile access.