Cover image

City Sniffers

About

Copy heading link

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

Copy heading link

News feed

Copy heading link

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

Shop

Copy heading link

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

Copy heading link

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

Chat

Copy heading link

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

Notifications

Copy heading link

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

Payment management

Copy heading link

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

History logs

Copy heading link

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

Technologies

Copy heading link

Front-end: React Native & TypeScript

Copy heading link

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

Copy heading link

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

Copy heading link

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

Storage: Google Cloud Storage

Copy heading link

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

Payment gateway: Square

Copy heading link

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

Email server: SendInBlue

Copy heading link

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

Copy heading link

Alice Lo - Digital Designer

Case study

Copy heading link

City Sniffers App - Alice Lo

iOS screenshots

Copy heading link
image-cdfed4d69897d169ae8108c3feae4f0d5ec6b52a-1242x2688-pngimage-fec3f1f2b1e934a5ef025be7fd109c49d8742e5b-1242x2688-pngimage-283401678d410216bd916cce150726ea60bf8591-1242x2688-pngimage-2ca1c6bdf3173f15bfd4e477392551bf7bf13b8e-1242x2688-pngimage-3d0242bd18faf0c517c3841051c8ebe6f604f001-1242x2688-pngimage-889200f7989055fdfcdbef76e3b5184e09932a43-1242x2688-png

Android screenshots

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