Case study
Dog Trick
Dating & Social App for Dog Owners
Role
Scope
Stack
Live
What I built.
- 01
Built the product from start to finish: the features, the database, the server, the outside services, the admin panel and going live.
- 02
Sign up with email, Google, Facebook or Apple, and build profiles for yourself and several dogs.
- 03
Two swipe modes, people and dogs, filtered by distance, age and gender; a mutual like opens a private chat straight away.
- 04
Chat with text, images and seen status, plus blocking and reporting for safety.
- 05
Dog-friendly events with seat-limited bookings, and a Pro membership with coupons and promo codes.
- 06
An admin panel where the team manages users, events, reports, content pages, swipe timings and prices without a developer.
- 01
TypeScript and Express backend on MongoDB with about 100 REST endpoints across 24 routers and 16 collections.
- 02
Matching in MongoDB aggregation pipelines: great-circle distance and age computed in the database, exclusions for blocks, matches and swipe cooldowns, and dogs joined with $lookup.
- 03
An Aedes MQTT broker over WebSockets on the same port as the API, with per-room authorisation, and each published message replaced by the saved, populated record.
- 04
Firebase ID-token verification for Google, Facebook and Apple sign-in; encrypted session tokens for mobile and signed cookies for the admin panel.
- 05
Stripe PaymentSheet subscriptions and an admin catalogue of products, prices, coupons and promo codes, plus an in-app purchase coupon system that maps discounts onto pre-created store products.
- 06
A MongoDB change stream cleans up dogs, chats and tickets when a user is deleted; deployed to Heroku, PM2 staging and AWS EC2.