Skip to content

Adarsh-Polsey/pet-adopt-posho

Repository files navigation

🐾 Pet Adoption App

A beautiful and interactive Flutter app that allows users to explore, adopt, and favorite adorable pets. Built with clean architecture, Riverpod for state management, and Firestore as backend β€” the app supports theming, pagination, offline caching, animations, and more!


πŸš€ Hosted Links

Platform Link
🌐 Web App pet-adopt-adarsh-pasho.web.app
πŸ“± Android APK Download APK

πŸ“± Screens & Features

🏠 Home Page

  • βœ… Displays a list of pets
  • βœ… Includes a search bar (search by name)
  • βœ… Filters by category (Dog, Cat, All)
  • βœ… Pagination supported (Firestore cursor-based)
  • βœ… Pull-to-refresh
  • βœ… Hero animation for image transitions
  • βœ… Offline support with Firestore local caching

πŸ“„ Details Page

  • βœ… Displays pet’s name, age, price, and image
  • βœ… Interactive image viewer with pinch-to-zoom
  • βœ… β€œAdopt Me” button with popup confirmation
  • βœ… Confetti animation on successful adoption
  • βœ… Greyed-out UI for adopted pets
  • βœ… Persistent adoption status across launches

πŸ•“ History Page

  • βœ… Shows a chronological list of adopted pets
  • βœ… Clear and minimal timeline-style display

❀️ Favorites Page

  • βœ… Users can favorite/unfavorite pets
  • βœ… Favorite status persists across sessions
  • βœ… Clean list layout

🎨 General Features

Feature Status
Hero Animation (List β†’ Detail) βœ… Done
Attractive & Responsive UI βœ… Done
Dark Mode Support βœ… Done
State Management with Riverpod βœ… Done
SharedPreferences Persistence βœ… Done
Offline Firestore Cache βœ… Done

πŸ› οΈ Architecture

  • MVVM Structure
  • Riverpod for clean state management
  • Firestore as database
  • Exception-safe repository pattern
  • Models using .fromJson() and .toJson()
  • SOLID and Clean Code principles

πŸ§ͺ Testing

Test Type Status
βœ… Unit Tests βœ”οΈ Done
βœ… Widget Tests βœ”οΈ Done
πŸ”„ Integration Optional

πŸ“Œ Technologies Used

  • Flutter (Stable)
  • Riverpod
  • Cloud Firestore
  • SharedPreferences
  • Confetti Package
  • CachedNetworkImage
  • Hero Animations
  • Pull-to-Refresh
  • Interactive Viewer

πŸ‘€ Developer

Adarsh A. (ADX)
Flutter Developer | UI/UX Enthusiast
πŸ“§ sharanya.nambiar@posha.com


β€œAdopt a pet. Save a soul. Share a smile.” 🐢🐱

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published