Tappy + Archetype Make \$3–4k/mo: Vibe-Coded with Claude Code (Case Study)

October 7, 2026 · 1328 words

QuestionAnswer
What it isTwo products from one founder. Tappy: Apple/Google Wallet membership cards with lock-screen push for independent businesses. Archetype: an iOS personality app.
BuilderDeveloper (Louis-David Paul-Hus, former freelance startup developer)
AI toolClaude Code (both products)
StackArchetype: Swift, Firebase, Superwall, sleek.design for UI. Tappy: not disclosed
Time to launchTappy MVP: 1 day. Archetype: 2 weeks
Revenue$3k–$4k/mo for the whole portfolio, not split per app (self-reported, May 2026)
SourceIndie Hackers, May 26, 2026

Claude Code app revenue illustration: a wallet membership card for a café and a personality app on a phone, both feeding one combined portfolio revenue chart

Louis-David Paul-Hus says his current revenue is $3k to $4k per month. That number covers his whole portfolio, not one app. The two products he describes are Tappy and Archetype, and he says he built both with Claude Code. The interview does not split the revenue between them, so neither will I.

The more interesting part is how fast he built them. The Tappy MVP took one day. Archetype took two weeks. Building was the easy part. Selling is where he says the real work is.

The problem: one channel, then zero

Before these apps, Paul-Hus built an app called GlowUp. According to the Indie Hackers interview, it made $800k in sales in 15 months. Almost all of its users came from TikTok. He ran seven accounts posting five times a day. Those accounts reached around 500 million views in a year.

Then the views stopped, and revenue fell with them. He sold GlowUp for $150k. GlowUp was not built with AI coding tools. It started in FlutterFlow (a no-code app builder) with Firebase, then moved to Swift. I include it because it explains the strategy behind the current portfolio: more than one product, and more than one channel.

How it was built

Tappy makes custom membership cards that live in Apple Wallet and Google Wallet. A café or bar customer taps once to add the card. The business can then update the card and send push notifications to the customer's lock screen. No app download is needed. The Tappy homepage says it is for "independent cafés, bars, and boutique brands" and is based in Montréal.

Paul-Hus says the Tappy MVP (minimum viable product, the smallest version that works) was built in a day with Claude Code. Claude Code is Anthropic's AI coding agent that runs in your terminal and edits your project files. The interview does not say what Tappy runs on.

Archetype is an iOS app about personality. The interview describes it as combining systems like MBTI, astrology and Human Design. The App Store listing describes a 20-question quiz, then AI insights on your archetype, shadow self and attachment style.

He built it in two weeks with Claude Code. The stack is Swift, Firebase (Google's hosted backend) and Superwall (a tool for building and testing paywall screens). He used sleek.design for the UI. The App Store lists the seller as Viral Tech Inc. Tappy's site also credits "Viral Tech", so the two appear to share a company.

How it makes money

How the two apps earn: Tappy charges businesses a one-time setup fee plus a monthly subscription, while Archetype sells in-app purchases to individual users

The two apps earn in very different ways.

Tappy is B2B. B2B means the customer is a business, not a person. The pricing page shows:

  • A $500 one-time setup fee for a custom card, designed and deployed.
  • Then $49 per month, or $499 per year ("about two months free").
  • No contract. Cancel any time.

That setup fee matters. One new client pays for ten months of the subscription on day one. The homepage shows work for Montréal Alliance, Bar Suzanne and Hurtliche. It also advertises three open slots for spring 2026.

Archetype is B2C. It is free to download with in-app purchases. The App Store lists an Archetype Report at $14.99, plus Archetype Pro at $9.99 and $49.99. It has a 5.0 rating from 21 ratings.

The interview gives one total for the portfolio. We don't know how much comes from each app.

First users: still the hard part

Paul-Hus is open that distribution is not solved. Tappy is still early. He is going door to door and sending cold emails. His own verdict on that, in the interview: "So far, it hasn't been working." For Archetype, he posts TikTok videos and user-generated content, and he says momentum is building slowly.

His summary of the whole situation is short. The bottleneck is not the product. It is distribution and marketing.

What to copy

  • Price B2B setup separately. A one-time setup fee gets you paid for custom work. It also filters out people who aren't serious.
  • Pick a boring, visible product. A Wallet card is easy to explain in one sentence at a café counter.
  • Spread your risk. GlowUp showed what happens when one channel carries everything. Two products with two different buyers is a hedge.
  • Start marketing while you build. He says this directly in the interview. If a product takes a day to build, most of your time should go to selling it.

If you vibe-code this

A Wallet-card service holds something valuable: each merchant's customer list, with names, emails and phone numbers. A consumer app on Firebase holds personal answers from users. Here is what I would check if you build either type of app. This is about the app type in general, not about Tappy or Archetype.

  1. Merchant A must never see merchant B's customers. Every API route that returns members must check the logged-in merchant. See API route IDOR.
  2. Keep signing keys on the server. Apple Wallet passes are signed with a certificate. Push keys are secrets too. Never put them in client code. See environment variables.
  3. Rate-limit the public signup form. A form that takes name, email and phone is a spam target. See API rate limiting.
  4. Lock down Firebase rules. Default test-mode rules let anyone read your database. See Firebase security rules.

Here is the core check from item 1, in a Next.js route:

// app/api/merchants/[merchantId]/members/route.ts
import { NextResponse } from "next/server";
import { getSession } from "@/lib/auth"; // your auth helper
import { db } from "@/lib/db";

export async function GET(
  _req: Request,
  { params }: { params: Promise<{ merchantId: string }> }
) {
  const { merchantId } = await params;
  const session = await getSession();
  if (!session) return NextResponse.json({ error: "Unauthorized" }, { status: 401 });

  // The merchant ID in the URL must match the logged-in user's merchant
  if (session.merchantId !== merchantId) {
    return NextResponse.json({ error: "Not found" }, { status: 404 });
  }

  const members = await db.member.findMany({
    where: { merchantId },
    select: { id: true, name: true, email: true, phone: true },
  });
  return NextResponse.json(members);
}

Building something that stores other businesses' customer data? I review vibe-coded apps before launch. Email [email protected] and tell me what you're building.

Key takeaway

Claude Code got Tappy's MVP built in a day and Archetype in two weeks. The $3k–$4k a month they earn together came from what happened after: pricing, door knocking and posting videos. If AI makes building fast, spend the time you save on distribution.

More case studies: Vibe-coded apps making money. Before you launch: Vibe coding security guide.

Sources