Case studyMobile App

Tattooday

Three audiences - artists, organizers, and enthusiasts - had no common ground. We built them one app and shipped it to both stores.

Year
2025
Client
Tattooday
Services
UX/UI Design · Mobile Development · Website Development
Status
Shipped - iOS & Android
Tattooday app

01Brief

What we were asked

A social platform connecting tattoo artists, convention organizers, and enthusiasts — live on both App Store and Google Play.

02Challenge

Why it was hard

The tattoo industry had no unified digital platform where artists, convention organizers, and enthusiasts could connect meaningfully. Artists lacked a dedicated space to showcase portfolios and manage bookings beyond generic social media. Convention organizers had no streamlined tools for promotion, artist coordination, and RSVP management. Enthusiasts had no reliable way to discover artists by style, location, or specialization.

From an engineering standpoint, we faced a significant architectural challenge: building a platform that served three fundamentally different user types — each with distinct workflows, permissions, and data models — within a single cohesive mobile application. Performance-critical features like camera integration, high-resolution image processing, and real-time messaging required custom native modules that couldn't be achieved with standard React Native bridges alone.

03The Build

Scroll through the product

01Discover

Find your artist, not just an artist

Enthusiasts open the app to the artists working around them. Geolocation queries filter by style, distance, and specialization, so someone searching for fine line work in Calgary sees artists who can actually take the booking - not a generic feed.

Tattooday - Find your artist, not just an artist

02Showcase

A feed that treats tattoos like art

Portfolios load in high resolution with zoom that holds up to close inspection. Standard React Native bridges buckled under the image volume, so we wrote custom Swift and Kotlin modules for the camera and processing pipeline. Monthly contests with community voting keep the feed alive.

Tattooday - A feed that treats tattoos like art

03Book

From scrolling to booked in one sheet

Booking lives right where the work does. Artists publish their availability with timezone support across North America, and clients grab a slot without leaving the post. No lost DMs, no back-and-forth.

Tattooday - From scrolling to booked in one sheet

04Connect

Messaging that keeps up

Direct messages ride on Firestore's real-time sync with read receipts - no polling, no pull-to-refresh. The same infrastructure powers live contest voting and keeps the feed current the moment something changes.

Tattooday - Messaging that keeps up

05Gather

Convention season, handled

Organizers get their own toolkit: event pages, RSVP tracking, and geographic targeting for promotion. When convention season spikes traffic, AWS Elastic Beanstalk scales out behind a load balancer and the app doesn't blink.

Tattooday - Convention season, handled

04Notes

How it runs

We architected and built Tattooday from the ground up using React Native with Expo as the foundation, supplemented by custom Kotlin modules for Android and Swift modules for iOS to handle camera access, image processing pipelines, and real-time features that demanded native-level performance.

The backend runs on Fastify with Node.js, chosen for its low overhead and high throughput — critical for handling concurrent image uploads and real-time messaging. Firebase Firestore serves as the primary database, providing real-time sync capabilities that power the social feed, direct messaging, and live contest voting without polling.

The app delivers portfolio showcasing with high-quality media and zoom capabilities, booking schedule management with timezone support across North America, location-based artist discovery using geolocation queries, direct messaging with read receipts, monthly artist contests with community voting and leaderboards, and comprehensive convention management tools including RSVP tracking and geographic event targeting.

We deployed on AWS Elastic Beanstalk behind a load balancer to handle traffic spikes during convention seasons when platform usage surges. The entire CI/CD pipeline was configured for automated builds and over-the-air updates via Expo, enabling rapid iteration without app store review delays.

Stack

Mobile
React NativeExpoCustom Swift ModulesCustom Kotlin Modules
Backend
FastifyNode.js
Database
Firebase Firestore
Infrastructure
AWS Elastic BeanstalkLoad Balancer

05Outcome

Where it landed

Platforms
iOS + Android
Live on both App Store and Google Play
User Types
3
Artists, organizers, and enthusiasts
Core Screens
40+
Complete app experience across all user flows
Native Modules
Custom
Kotlin & Swift for camera and image processing

06Craft

The work behind the work

Before a single line of code: 40+ screens wireframed in Figma, a typography system built on Poppins, and complete user flows mapped for all three roles. Then the shipped result - the artist profile that reads like a portfolio, the monthly Top 10 ranking with its crown economy, and the show organizer's page.

Have a product like this in mind?

We plan, design, and ship - the whole story, start to finish.

Start a conversation

Next project

1511 Paris

Luxury Artisan E-Commerce