Zoori — Pet adoption platform | An App Idea LLC

Swipe-based dog discovery and rescue-org operations — bilingual, role-aware, real-time.

Expo SDK 54 new archFirebase + Cloud FunctionsTanStack Query v5Role-themed gradients
3-sided appRoles
English + SpanishLanguages
Swipe + match scoreDiscovery
TimelineExpo SDK 54, new arch
TeamAdopter · Org · Admin roles
PlatformiOS · Android
ImpactBilingual · Swipe + match scoring
Problem

The challenge

Puerto Rico rescue organizations needed a shared system for managing dog listings and incoming applications. Adopters needed more than a static list — they needed discovery that matched lifestyle and preference. A single product had to serve all three sides without the role model collapsing.

Approach

How we built it

I structured the app around Expo Router file-based routing with strict role-based layouts for adopter, organization, and admin, wrapped in a coral, teal, and purple role-themed gradient system with Poppins typography. Firebase Auth, Firestore, and Cloud Functions power the backend. TanStack Query v5 handles server state, Zustand manages swipe and preference state client-side, and Reanimated v4 plus Gesture Handler v2 drive the swipe deck. A client-side scorer grades dog–adopter fit A–D to power the For-You feed, and i18next covers bilingual content with locale detection.

Outcome

What shipped

Zoori gives rescue organizations a full operations dashboard for dogs, applications, and messaging, while adopters get swipe and For-You discovery tuned to their preferences. Real-time messaging, push notifications, transactional email, a RescueGroups.org sync, and admin moderation make the platform usable for both English- and Spanish-speaking communities in Puerto Rico.

Results

Outcomes

  • Built a three-sided platform — adopter, rescue organization, and admin — each with dedicated dashboards, workflows, moderation tools, and access controls backed by Firestore rules.
  • Delivered gesture-driven swipe discovery plus an algorithmic For-You feed with A–D match scoring, a breed glossary with bookmark alerts, saved dogs, and swipe history.
  • Added bilingual (en/es) support, real-time per-conversation messaging via Firestore listeners, 13 push-notification types, transactional email via Resend, and a RescueGroups.org listing sync.
Engineering

Tech stack

Expo SDK 54React Native 0.81React 19Expo Router v6TanStack Query v5Zustand v5React Hook Form + Zod v4Reanimated 4Gesture Handler v2Firebase JS SDK v12Cloud FunctionsResendi18nextTypeScript
Social ImpactMobileFirebaseBilingualMulti-role
← All workPet adoption platform
Contact