Skip to content

Commit 48fbae5

Browse files
authored
Re (#22)
2 parents 4bb501d + 8be8618 commit 48fbae5

35 files changed

Lines changed: 2316 additions & 120 deletions

.firebaserc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"projects": {
3+
"default": "petfolio-197e6"
4+
}
5+
}

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,4 @@ dist/petsphere-e6d8abd0.ipa
5151
.env.local
5252
/android/gradle.properties
5353
/scratch
54+
/.kiro

.vscode/settings.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
{
2+
"files.encoding": "utf8",
3+
"[markdown]": {
4+
"files.encoding": "utf8"
5+
},
26
"java.configuration.updateBuildConfiguration": "automatic",
37
"workbench.browser.openLocalhostLinks": true,
48
"workbench.browser.enableChatTools": true,

PetForlio.md

Lines changed: 374 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,374 @@
1+
2+
# PetFolio Flutter App
3+
4+
## Overview
5+
6+
PetFolio is a pet social and marketplace platform that allows users to connect with other pet owners, find and list pets for adoption, and buy and sell pet products.
7+
8+
## Features
9+
---
10+
11+
### 🔐 Authentication
12+
- Email/password sign up and login
13+
- Session persistence across app restarts
14+
- Auto-redirect based on auth state (splash → login → home)
15+
- Profile update (name, bio, location, profile image)
16+
- Logout with confirmation dialog
17+
18+
---
19+
20+
### 🏠 Home Feed (Social)
21+
- Instagram-style scrollable post feed
22+
- Stories row with per-pet story creation
23+
- Pull-to-refresh
24+
- Real-time like updates via Supabase Realtime
25+
- Optimistic like toggle
26+
- Comment bottom sheet with live comment list
27+
- Post sharing via native share sheet
28+
- Post creation (with media upload, caption, location, pet tagging)
29+
- Post editing and deletion (own posts only)
30+
- Story creation (select which pet posts the story)
31+
- Story viewing
32+
- Story deletion
33+
- Notification sent on like, comment, and share
34+
- Shimmer loading skeleton
35+
36+
---
37+
38+
### 🔍 Discovery / Breeding Matching
39+
- Tinder-style swipeable pet card stack
40+
- Swipe right to like, swipe left to pass
41+
- Animated swipe-out and snap-back physics
42+
- Action buttons: Like, Nope, View Profile (Star)
43+
- Filter chips: For You, Same Breed, Nearby
44+
- Text search across pet name, breed, animal type
45+
- Multi-pet selector bar (browse as different pets)
46+
- My Listings tab — manage your breeding-listed pets
47+
- Nearby tab (distance-sorted view)
48+
- Like/match request system
49+
- Duplicate request prevention
50+
- Notification sent to receiver on like
51+
52+
---
53+
54+
### 🐾 Pet Profiles
55+
- Owner profile view (bio, location, email, follower/following counts)
56+
- Individual pet profile view (breed, animal type, verified badge, bio)
57+
- Pet carousel selector (switch between owner and each pet)
58+
- Post grid with category filter chips (Playtime, Nap, Outdoor, Food)
59+
- Follower/following count (tappable → opens list)
60+
- Edit owner profile (name, bio, location, profile image upload)
61+
- Edit pet profile (name, breed, age, bio, image upload)
62+
- Add new pet
63+
- Share profile (generates deep link)
64+
- Public care badges row on owner profile
65+
- Visitor profile view (follow/unfollow, send match request, message)
66+
- Logout from profile
67+
68+
---
69+
70+
### 💬 Messaging
71+
- Messages inbox with search
72+
- Unread count badge per thread
73+
- Real-time message delivery via Supabase Realtime
74+
- Message bubbles with date separators
75+
- Floating pill input bar
76+
- Attachment sheet (camera, gallery, document — UI ready, marked coming soon)
77+
- Voice message button (UI ready, marked coming soon)
78+
- Tap avatar to open other pet's profile
79+
- Thread auto-created when a match is accepted (DB trigger)
80+
- Mark thread as read on open
81+
82+
---
83+
84+
### 🔔 Notifications
85+
- Activity tab: likes, comments, shares, follows, orders
86+
- Requests tab: incoming breeding match requests
87+
- Accept / Decline match requests inline
88+
- "Like Back" → creates match + opens chat
89+
- Unread count badge on home screen icon
90+
- Mark all as read on open
91+
- Tap notification → navigate to relevant entity (post, order, messages)
92+
93+
---
94+
95+
### 🐕 Pet Care Diary (Core Feature)
96+
**Care Diary Tab:**
97+
- Daily care log per pet (auto-creates today's log)
98+
- Breakfast / Dinner / Snack feeding toggles
99+
- Water cups tracker (increment/decrement, clamped to goal)
100+
- Mood selector (Sleepy, Happy, Playful, Sick)
101+
- Custom daily checklist with toggle tasks
102+
- Checklist progress bar with percentage
103+
- Personalized nudge messages based on onboarding data
104+
- Edit Goals modal (calorie goal, water goal, exercise goal)
105+
- Bento grid overview: Tasks ring, Calories ring, Water ring
106+
- 7-day streak banner with day flags
107+
- Week completion mask (Mon–Sun)
108+
- Debounced auto-save (400ms) to Supabase
109+
- Offline-first: serves stale cache immediately, then refreshes
110+
- Care setup banner → onboarding flow
111+
112+
**Gamification:**
113+
- Care points system (up to 10 pts/day, 2 pts per task)
114+
- 30-day care challenge progress bar
115+
- Streak days counter (current + best)
116+
- Streak freeze mechanic (2 per week)
117+
- Badge unlock system:
118+
- First Log, Streak 3/7/14 days
119+
- Week Complete, Perfect Week
120+
- 30-Day Challenge
121+
- Points 100 / 500
122+
- Nutrition Ninja (7-day feeding streak)
123+
- Hydration Station (7-day water goal streak)
124+
- Mood Tracker (7-day mood streak)
125+
- Achievements screen: level card, stat boxes, 30-day path, badge grid (locked/unlocked)
126+
- Public badge showcase editor (choose up to 3 badges to show on profile)
127+
- Badge sharing via native share
128+
129+
---
130+
131+
### 🏥 Health Tab (inside Pet Care)
132+
- Health overview card with alert chips (meds due, vet countdown, parasite overdue, active symptoms)
133+
- **Vitals & Weight:** log weight + BCS score (1–9), weight trend chart (7/30/90d range selector), delta vs prior
134+
- **Medications:** add/edit/delete medications, mark dose given/skipped, frequency options
135+
- **Vet Appointments:** add/edit/cancel appointments, upcoming list
136+
- **Vaccinations:** add, mark complete, scheduled/completed status
137+
- **Parasite Prevention:** log treatments, overdue alerts, latest per type
138+
- **Dental Logs:** home brushing and professional cleaning logs
139+
- **Allergies:** add/remove allergy entries
140+
- **Symptoms:** log symptom type + severity (mild/moderate/severe) + notes, resolve symptoms, active/resolved split
141+
142+
---
143+
144+
### 🍽️ Feeding Tab (inside Pet Care)
145+
- Breakfast / Dinner / Snack / Treats tracking
146+
- Calorie progress toward daily goal
147+
- Treat count and kcal tracking
148+
149+
---
150+
151+
### 🛒 Marketplace
152+
- Product grid (2-column) with category filter chips: All, Food, Toys, Bedding, Grooming, Treats, Accessories
153+
- Personalized greeting header
154+
- Member exclusive promo banner
155+
- Product detail screen
156+
- Add to cart with snackbar confirmation
157+
- Cart with item count badge
158+
- Cart screen (view/manage items)
159+
- Order history screen
160+
- Order status notifications
161+
162+
---
163+
164+
### 🔎 Search
165+
- Unified search across Posts, Pets, and Products (3 tabs)
166+
- Debounced search (400ms)
167+
- Clear button
168+
- Auto-focus on open
169+
- Post results with like/comment actions
170+
- Pet results → tap to open profile
171+
- Product results → add to cart
172+
173+
---
174+
175+
### 💰 Expense Tracker
176+
- Monthly budget dashboard with progress bar
177+
- Total spending display
178+
- Category breakdown grid (Food, Vet, Grooming, Toys, Accessories, Other)
179+
- Upcoming bills section
180+
- Transaction list with swipe-to-delete
181+
- Add expense modal (title, amount, category, date picker)
182+
- Edit monthly budget dialog
183+
- Period selector (This Month / Last 3 Months / This Year)
184+
185+
---
186+
187+
### 📈 Growth Charts
188+
- Weight history line chart (fl_chart)
189+
- Height history bar chart (fl_chart)
190+
- Time range selector (3M / 6M / 1Y / ALL)
191+
- Trend indicator chip
192+
- Milestones list
193+
- Log measurement bottom sheet (weight + height)
194+
195+
---
196+
197+
### 🏥 Vet Booking
198+
- Vet listing with rating, distance, specialty, price tier
199+
- Category filter chips (All, General, Dental, Surgery, Emergency)
200+
- Search bar
201+
- Booking detail sheet: date picker (14-day scroll), time slot grid
202+
- Confirm booking with snackbar
203+
204+
---
205+
206+
### 🚨 Emergency Care
207+
- Nearby emergency vet map button
208+
- Pet digital ID / QR code card
209+
- Immediate action grid (CPR, Bleeding, Heatstroke, Fractures)
210+
- 24/7 hotlines (Pet Poison Helpline, ASPCA) with tap-to-call
211+
- Toxic food items list
212+
- SOS floating action button (calls hotline)
213+
214+
---
215+
216+
### 👥 Community Groups
217+
- Suggested groups list with member count and join/open button
218+
- Trending categories grid (Training, Nutrition, Puppy Care, Senior Pets)
219+
- Create group button
220+
221+
---
222+
223+
### 🔍 Lost & Found
224+
- Lost Pets / Found Pets tabs
225+
- Pet cards with photo, breed, location, time, reward badge
226+
- Report pet FAB
227+
- Contact finder button
228+
- Share button
229+
230+
---
231+
232+
### 🐶 Adoption Center
233+
- Tinder-style swipe card stack for adoptable pets
234+
- ADOPT / NEXT swipe stamps
235+
- Pet info overlay (name, age, location, tags)
236+
- Verified badge
237+
238+
---
239+
240+
### 🎓 Pet Training
241+
- Training hero card with level + progress bar
242+
- Skill categories grid (Obedience, Agility, Social, Tricks) with completion progress
243+
- Daily exercises list
244+
- Find Trainers promotion card
245+
- New Session FAB
246+
247+
---
248+
249+
### 🛡️ Insurance Hub
250+
- Active policy card (plan name, deductible, reimbursement %, annual limit, renewal date)
251+
- Coverage breakdown (Accidents, Illnesses, Diagnostics, Dental)
252+
- Recent claims list with status (Approved/Pending)
253+
- Document vault (PDF/image storage with sync status)
254+
- Insurance perks / multi-pet discount card
255+
- File claim bottom sheet (subject, amount, date, document upload)
256+
257+
---
258+
259+
### 🗺️ Pet-Friendly Places
260+
- Map view / list view toggle
261+
- Search bar overlay
262+
- Category filter chips (Parks, Cafes, Hotels, Vets)
263+
- Places carousel at bottom of map
264+
- Place cards with rating, distance, open status, directions button
265+
- My location FAB
266+
267+
---
268+
269+
### 📅 Pet Events
270+
- (Route registered: `/events``PetEventDiscoveryScreen`)
271+
272+
---
273+
274+
### 🍎 Nutrition Planner
275+
- Daily calorie budget card with macro breakdown (Protein/Fats/Carbs)
276+
- Hydration tracker with animated circular progress
277+
- Safe food search bar
278+
- Meal schedule with checkboxes (Breakfast, Lunch, Dinner)
279+
- Dietary profile tags (Grain-Free, Low Sodium, Sensitive Stomach)
280+
- Smart nutrition tip
281+
- Add meal button
282+
283+
---
284+
285+
### 🐾 Pet Sitter Dashboard
286+
- Top-rated sitters list (rating, jobs, price/hr)
287+
- Post a job card
288+
- Upcoming bookings list
289+
290+
---
291+
292+
### 🔬 AI Breed Identifier
293+
- Camera preview with corner frame overlay
294+
- Animated scan line
295+
- Start Precision Scan button
296+
- Import from Gallery button
297+
- Scan history horizontal scroll
298+
- Results sheet: primary match + secondary match with confidence %, breed characteristics, lifespan/weight/group stats
299+
- Add to Pet Profile button
300+
301+
---
302+
303+
### 📚 Knowledge Base
304+
- Featured article hero card
305+
- Category icons (Health, Nutrition, Training, First Aid)
306+
- Tabbed articles (All Topics, Health & Wellness, Behavioral Tips, Expert Guides)
307+
- Article tiles with read time, category, expert-verified badge
308+
- Search bar
309+
- Bookmark button
310+
311+
---
312+
313+
### ⭐ Gear Reviews
314+
- Top-rated gear cards (product name, brand, rating, price, review count)
315+
- Category chips (Harnesses, Smart Toys, Feeders, Beds, GPS Trackers)
316+
317+
---
318+
319+
### 🕐 Pet Social Timeline
320+
- Immersive parallax hero header with pet photo
321+
- Pet stats row (Memories, Milestones, Rank)
322+
- Chronological timeline with event types (photo, achievement, health, milestone)
323+
- Inline photo display for photo events
324+
- Reactions (likes, comments) per event
325+
- Add Memory FAB
326+
327+
---
328+
329+
### 🌈 Pet Memorial
330+
- Immersive gradient background
331+
- Memorial profile (photo, name, years)
332+
- Quote card
333+
- Treasured moments photo gallery grid
334+
- Messages of love board
335+
- Add a Memory button
336+
- Share button
337+
338+
---
339+
340+
### 📋 Medical Records
341+
- (Route registered: `/medical_records``PetHealthRecordScreen`)
342+
343+
### 📤 Health Record Export
344+
- (Route registered: `/export_records``PetHealthRecordExportScreen`)
345+
346+
---
347+
348+
### ⚙️ Settings
349+
- Light / Dark theme toggle (persisted via SharedPreferences)
350+
- Account info display
351+
- Notifications shortcut
352+
- Liked pets shortcut
353+
- Order history shortcut
354+
- Achievements & badges section (per-pet badge carousel, tap to view detail + share)
355+
- Privacy Policy, Terms of Service, Help & Support links
356+
- App version display
357+
- Sign out with confirmation
358+
359+
---
360+
361+
### 🌐 Cross-Cutting Features
362+
- Material Design 3 with custom `PetfolioShadows` theme extension
363+
- Playfair Display (headings) + DM Sans (body) typography
364+
- Light and dark theme support
365+
- Responsive layout (max-width constraints for tablet/web)
366+
- Accessibility: semantic labels on nav bar, buttons, progress indicators
367+
- GoRouter with auth-aware redirects and deep link support (50+ routes)
368+
- Riverpod state management with `Notifier` pattern throughout
369+
- Bootstrap coordinator for parallel cold-start data hydration
370+
- App lifecycle sync (re-syncs data on resume, debounced 30s)
371+
- Supabase Realtime subscriptions (likes, comments, messages)
372+
- Image upload helper (Supabase Storage)
373+
- Local cache for care logs (SharedPreferences)
374+
- Marionette binding for UI automation testing

0 commit comments

Comments
 (0)