팻파인더 APP
Input Requirements: Photo (required), pet name, type (dog/cat, etc.), breed, color, characteristics (unique features), date and time of disappearance/sighting, location (select from map/current location), contact information (phone/in-app message), additional description.
Photo Processing: Compress before upload + thumbnail generation, EXIF stripping (privacy protection), multiple images supported.
Server Storage: Upload images to Firestore documents + Storage (path: posts/{postId}/images/{filename}).
B. Recent Feed/List (Feed)
Recent first, distance (based on user location), filter (type/breed/date/hashtag).
Paging / infinite scrolling (using query cursor).
Each entry displays a summary (thumbnail, distance, time, status (missing/found/closed)).
C. Post Detail Page
Large image view, map (pin), author information (nickname, trust score), contact buttons (phone/text/in-app message).
Change report status: Open → In-Progress → Found → Closed.
"Report" button: Template for automatically sending notifications/messages to the author upon reporting.
D. Map View (Map)
Google Maps (or Naver Map) integration: marker clustering, filtering.
Displays the user's current location and provides directions to their location (can call external map apps).
Clicking a marker opens a summary pop-up and takes you to the details page.
E. Push Notification (Firebase Cloud Messaging)
Push notifications are sent to nearby users (within a set radius) when a new post is posted.
Users can subscribe to specific regions/topics → customized notifications.
Push notifications are sent when reporting, replying, chatting, or changing status.
F. Location-Based Alerts (Geofencing)
Notifications are sent when a missing person or sighting is registered within a user-defined radius (e.g., 2km).
Considerations for battery and privacy: Background location is enabled or optionally enabled.
G. User Authentication and Profile (Auth)
Firebase Auth: Email/password, phone number (or social login).
Profile: Nickname, profile photo, contact permissions, trust score (admin verification and community feedback).
Phone verification recommended (increases contact reliability).
H. Trust and Verification System
Report Verification Flow: Admin Approval/Community Report → Confirmed.
Reporter Reputation: Restrictions (temporarily blinding) for repeated false reports.
Photo and Metadata Verification (duplicate image detection, malicious content filtering).
I. In-App Messaging/Contacts
Simple chat (anonymity can be restricted), phone call (number exposure), or text link.
Spam Prevention (message frequency limit).


