TINY45 CASE STUDY

Tiny45 — Clothing Brand Platform

Clothing storefront I built end-to-end — from catalog and cart through Clerk auth and Stripe and Paystack checkout.

Quick Facts

Role:

Full-Stack Engineer

Ownership:

Built the product end-to-end

Product Type:

Clothing Brand Platform

Payments:

Stripe and Paystack checkout

Media:

Next.js image optimization for product photos

Core Stack:

Next.jsReactTypeScriptSupabaseClerkStripePaystack

Focus:

Smooth shopping UX, predictable state handling, and reliable checkout

The Problem

The challenge was balancing polished frontend interaction with maintainable architecture and reliable state handling across product, cart, auth, and checkout surfaces.

Key Features

Product discovery and catalog browsing

Cart and quantity management

Authentication-aware purchase flow

Secure checkout with Stripe and Paystack

Responsive storefront interactions

Product

Tiny45 landing page with the Everyday 25/26 collection hero and a Shop the collection link
Landing — collection hero into the storefront
Tiny45 catalog grid showing Everyday Cardigan colorways and prices
Catalog — product discovery with colorways and cart count
Tiny45 product page for the Everyday Cardigan with size picker and Add to bag
Product — size, price, and add to bag
Tiny45 product page for the Premium Suede Jacket with image carousel and product details
Product — gallery, size chart, and product details

Engineering

Separated UI and data boundaries so cart, product, and checkout state stay predictable

Reusable UI primitives so storefront surfaces stay consistent across devices

Next.js image optimization for product media

Kept the scope on core commerce reliability instead of extra complexity

Architecture

Frontend, state, backend, and payments are split so checkout can change without rewriting the storefront.

Frontend:

Next.js

React

TypeScript

Tailwind CSS

Framer Motion

State and data flow:

Zustand

TanStack Query

Zod

Backend infrastructure:

Supabase

Clerk

Commerce processing:

Stripe and Paystack checkout

Typed cart and product state sit between the UI and checkout so payment flows stay reliable.