cover-image

City Sniffers

About

City Sniffers is a B2C (Business to customer) app used to manage dog walks and communicate with clients of the City Sniffers dog walking business. The app had over 70 daily users. Features include a social feed, shop, credit management, bookings, chat, and live notifications. The app uses the React Native CLI, NodeJS, and Firestore for the code base and leverages third-party APIs such as Square (for payments) and SendInBlue (for email notifications).

Features

News feed

Daily posts from the dog walkers showing images and videos of dogs on their walks. Users can comment and like each post.

Shop

Customers can purchase dog walk credits to make bookings. Payments are processed by Square using credit cards with an invoice sent directly to the customer.

Bookings calendar

Bookings can be made by customers as either one-off bookings or recurring bookings.

Chat

A group chat gives the ability for dog owners of the same household to chat with the staff of City Sniffers.

Notifications

Push notifications for various events of the app such as chat messages, booking confirmations, successful purchases, etc.

Payment management

Customers can add and remove credit cards to be used in the Shop for quick purchases.

History logs

Full logs of all dog walks showing all status changes such as pending bookings, confirmations, pick-ups, and drop-offs.

Technologies

Front-end: React Native & TypeScript

React Native for a single JavaScript codebase to be compiled down to Kotlin and Swift to run on both Android and iOS.

Back-end: Node.js & TypeScript

Node.js backend using Firebase serverless functions. Features include HTTPS callable functions from the front end, workflow triggers from database changes, authentication events, storage uploads, and time-based CRON jobs.

Database: Cloud Firestore

NoSQL database for quick reads and rights to cater to real-time changes for the News Feed and Chat functions.

Storage: Google Cloud Storage

Cloud storage to host profile pictures, photos, and videos from the New Feed and Chats

Payment gateway: Square

Square Developer API for a scalable Payment, Orders, and Customer management solution.

Email server: SendInBlue

A cloud email service with visual templates to save on managing an SMTP server and backend HTML templating.

UI and UX designed by Alice Lo

Alice Lo - Digital Designer

Case study

iOS screenshots

image-cdfed4d69897d169ae8108c3feae4f0d5ec6b52a-1242x2688-png
image-fec3f1f2b1e934a5ef025be7fd109c49d8742e5b-1242x2688-png
image-283401678d410216bd916cce150726ea60bf8591-1242x2688-png
image-2ca1c6bdf3173f15bfd4e477392551bf7bf13b8e-1242x2688-png
image-3d0242bd18faf0c517c3841051c8ebe6f604f001-1242x2688-png
image-889200f7989055fdfcdbef76e3b5184e09932a43-1242x2688-png

Android screenshots

image-4c4af054d08d940ed3db7552a9940707d9e0f768-1023x2048-png
image-c4d891edf7748f5a770bfd2887cc7797aff08f60-1080x2160-png
image-c967484205192a95815ae633ab672ca66f61a819-1080x2160-png
image-e9cf8dc11b8e3219419553dbaad8d560242f4376-1080x2160-png
image-39da0cfd119f6e4f38c94601de57480d267e3f42-1080x2160-png
image-82eb0585557c177ee22574835516df871ec4de84-1080x2160-png