Skip to content

Tailmate is a cross-platform Flutter application that helps users discover and adopt pets. It offers a clean, responsive UI for both mobile and web platforms, with features like pet listing, pet details, favorites, and image handling.

Notifications You must be signed in to change notification settings

TheScriptRailoth/tailmate

Repository files navigation

🐾 Tailmate – Pet Adoption App (Flutter + Web)

Tailmate is a cross-platform Flutter application that helps users discover and adopt pets. It offers a clean, responsive UI for both mobile and web platforms, with features like pet listing, pet details, favorites, and image handling.


✨ Features

  • 🐾 View a list of pets with images, age, and price.
  • ❤️ Mark pets as favorite for easy tracking.
  • 📄 View detailed information about each pet with a clean UI.
  • 🌐 Responsive design optimized for both mobile and web platforms.
  • ⚙️ Hosted API on Vercel with mock JSON data for quick access.
  • 🧩 Smooth Hero animations and custom card clipping for a polished feel.
  • 🔐 CORS-enabled API integration to support Flutter Web.
  • 💾 Efficient caching using Hive: pet data and images are stored locally to reduce API calls.
  • 🔄 Pull-to-refresh feature to manually update data from the API.

📸 Screenshots

🏠 Home Page

Light Mode Dark Mode
Home Light Home Dark

🏠 Home Page Category

Light Mode Dark Mode
Home Category Light Home Category Dark

🔍 Search Page

Light Mode Dark Mode
Search Light Search Dark

📋 Search Results Filter

Light Mode Dark Mode
Search Result Light Search Result Dark

📋 Search Results

Light Mode Dark Mode
Search Result Filter Light Search Result Dark

📂 Drawer

Light Mode Dark Mode
Drawer Light Drawer Dark

❤️ Favorites Page

Light Mode Dark Mode
Favorites Light Favorites Dark

🕓 Filter History

Light Mode Dark Mode
Filter History Light Filter History Dark

📄 Details Page

Light Mode Dark Mode
Details Light Details Dark

🎉 Adoption Success

Light Mode Dark Mode
Details Light Details Dark

🌐 Live Web Demo

👉 Try the Web App (Hosted on Vercel)


📦 APK & Code


🛠️ Tech Stack

  • Frontend: Flutter (Dart)
  • Backend: Node.js (Vercel Serverless Functions)
  • State Management: flutter_bloc
  • Hosting: Vercel (API & Web)
  • Storage: JSON file-based mock data

🗂️ Folder Structure

    
tailmate/
│
├── lib/
│ ├── cubits/
│ ├── models/
│ ├── screens/
│ └── widgets/
├── build/web/ # Web output folder (for hosting)
├── api/ # Vercel serverless backend
├── data/pets.json # Mock pet data
├── pubspec.yaml
└── README.md
    

🧪 Run Locally

# Clone the repo
git clone https://github.com/yourusername/tailmate.git
cd tailmate

# Get dependencies
flutter pub get

# Run on Android
flutter run

# Run on Web
flutter run -d chrome

# Build for Web
flutter build web

☁️ Deployment Notes

  • Only the build/web folder is deployed to Vercel due to the 100MB limit.
  • Backend API is hosted via Vercel serverless functions inside /api.
  • A vercel.json is used to route API requests properly.

🙏 Acknowledgements

Thanks to Posha for the opportunity and for providing the assessment prompt. Built with ❤️ by Ashutosh Mishra.


📧 Contact

About

Tailmate is a cross-platform Flutter application that helps users discover and adopt pets. It offers a clean, responsive UI for both mobile and web platforms, with features like pet listing, pet details, favorites, and image handling.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published