Cash App clone

Cashly · Payments app template

A working Cash App-style iPhone app in Swift, running on sample data. Big-number pay pad, pay and request flows, balance, debit card, investing charts and activity.

  • iOS
  • Swift · SwiftUI
  • Sample data
  • Free to remix
Cashly, Cash App clone template
Remix this template

Remix copies the working Swift app into your account for free. It runs in Vibecode's cloud iOS simulator, in your browser.

What's inside

  • Pay pad
  • Send and request
  • Balance
  • Debit card
  • Investing
  • Activity
  • Profile and QR
How to build a Cash App cloneThe guide: features, hard parts and costs · 6 min read

About this template

A Cash App clone is a peer-to-peer payments app: type an amount on a big number pad, pick a $handle, pay or request, and see it in activity. The interface is the easy part. Moving real money needs a licensed partner and identity checks. Vibecode's template, Cashly, has the full interface (pay pad, pay and request, balance, card, investing charts, activity and receipts) as a native iPhone app written in Swift, on simulated money. Remix it to prototype a fintech idea, then connect a regulated payments provider.

How to use it

  1. 1

    Remix the template

    Open the Cashly share page and press Remix. Vibecode copies the whole Swift project into your account, so you start from a working app instead of an empty screen. Remixing is free.

  2. 2

    Make it yours by chatting

    Tell the agent what to change in plain English, for example: “Rename the app to Splitly, focus it on splitting bills between roommates, and add a monthly rent request that repeats.” Each change rebuilds the app and runs it in Vibecode's cloud iOS simulator, right in your browser.

  3. 3

    Publish to the App Store

    Click Publish, choose Publish to App Store and sign in with your Apple ID. Vibecode builds, signs and uploads the app to Apple, with no Mac and no Xcode. You need an Apple Developer account ($99/year) and the Plus plan or higher.

Features

  • Pay pad

    Huge amount with springy digits, comma formatting, and a shake and haptic on invalid input.

  • Send and request

    Search contacts by name or $handle, add a note, confirm and see an animated success screen.

  • Balance

    Add Cash and Cash Out with standard or instant options, savings goal and direct deposit details.

  • Debit card

    Card that flips to show details, a lock toggle and offers you can switch on one at a time.

  • Investing

    Swift Charts portfolio chart you can scrub, range tabs from 1D to ALL, holdings with sparklines and a Bitcoin section.

  • Activity

    Searchable transactions grouped by date with pending states and receipt sheets.

  • Profile and QR

    Your $handle, a QR code to get paid, limits and settings.

Add next, with one prompt each

  • Real money movement. Bank linking, card funding and transfers through a licensed provider.

  • Identity verification. KYC checks before people can send or hold money.

  • Fraud controls. Limits, holds on unusual payments and dispute handling.

The prompt that built it

Paste it into a new iOS app to build your own copy from scratch, or change the brief first.

Prompt · 765 words

Build a polished, fully working native iOS app in SwiftUI named Cashly: an original peer-to-peer payments app that recreates the core experience of Cash App, but with its own name, its own original logo and its own color palette. Do NOT use the Cash App name, logo, wordmark, app icon or any trademarked asset anywhere in the app. Design an original Cashly logo mark, drawn with SwiftUI shapes (Path/Canvas) or made as a generated image asset, and use it in the header.

Screens and flows (bold minimal UI with your own signature accent, e.g. electric blue #2E5BFF, not green; bottom bar: Money, Card, Pay (center, default screen), Investing, Activity):
1. Pay (launch screen): the whole screen is the accent color with a huge centered amount "$0" in a heavy rounded font, a number pad (1-9, ., 0, backspace) whose digits pop in with a spring as you type, comma formatting ($1,250), a shake + haptic on an invalid entry (more than 2 decimals or over $5,000), a "USD" currency pill, a QR scanner icon and your avatar at the top, and two big pill buttons "Request" and "Pay".
2. Pay flow: Pay opens a recipient screen "To: Name, $Cashtag, Phone, Email" with search over 15 fixture contacts (avatars, names, $cashtags, recent and suggested), a "For" note field (e.g. "Pizza night 🍕"), then a confirm step and a success screen: animated check, "$45.00 sent to Maya Chen", "For: Pizza night 🍕", Done. The balance drops and the payment appears at the top of Activity. Request works the same and shows "Request sent" with a pending row.
3. Money: balance "$2,847.32" with "Add Cash" and "Cash Out" (sheet with amount chips and Standard/Instant choice; completing updates the balance), a savings card with a goal progress bar, "Bitcoin" and "Stocks" mini cards with sparkline charts, a direct deposit card with account/routing (masked, tap to reveal).
4. Card: an original debit card design (matte black with your logo, holographic sheen that moves when dragged, "ANSH NANDA", masked number, tap to flip to show number/expiry/CVV), "Lock card" toggle that greys the card with a lock animation, and "Boosts" (offers like "10% off at Beanline Coffee") with Add/Remove toggles and only one active at a time.
5. Investing: portfolio value "$6,412.18 +$212.40 (3.4%) Today" with a Swift Charts line chart that you can scrub with your finger (chartOverlay + DragGesture) to see the price at a point, range tabs 1D 1W 1M 3M 1Y ALL that animate the chart, holdings list (invented tickers) with sparklines, and a Bitcoin section.
6. Activity: searchable list of 20 transactions grouped by date with avatars or merchant icons, notes, +/- amounts in green/black, "Pending" chips; tapping one opens a receipt sheet (amount, to/from, note, date, "Completed", transaction id, "Pay again").
7. Profile (avatar on Pay): your $cashtag "$anshn", a QR code generated with Core Image (CIFilter.qrCodeGenerator), "Copy cashtag", limits and settings rows.

Rules for the whole app:
- Native SwiftUI for iOS 26, the deployment target the Vibecode iOS template already uses (do not change it). iPhone-first layout. SF Symbols are fine for UI icons (never for the Cash App logo or any brand mark).
- Everything runs on-device from realistic, deterministic fixture data in one Swift file (e.g. Fixtures.swift: real-sounding names, handles, numbers, timestamps, captions). No backend (leave the backend/ folder alone and make no network calls except loading images and media), no login, no permissions (no camera, photos, location, contacts, notifications, microphone). Do not persist state (no UserDefaults, @AppStorage, SwiftData or files): every launch starts from the same fixture state, so the demo is repeatable.
- Remote images: load images.unsplash.com photo URLs (with ?w=800&q=80 style params) with AsyncImage (or a small cached image view) and a tasteful placeholder. Verify every image and media URL with `curl -s -o /dev/null -w "%{http_code}" <url>` before you use it and replace any that do not return 200. No broken or blank images anywhere.
- Polish: native-feeling spacing and typography, safe areas, smooth spring animations (.spring/.snappy, most under 350 ms), matchedGeometryEffect for hero and expand/collapse transitions where it helps, .sensoryFeedback haptics on key taps, pressed states, and loading/empty states. Simulated waits stay short (under 3 s). Every button visible on screen does something sensible; nothing is a dead end.
- Keep the compiler happy: small files (under ~300 lines each), big view bodies split into subviews, and no long chained expressions, so nothing hits "unable to type-check this expression in reasonable time".
- It must build with zero errors and run in the iOS simulator with no crash. Walk through every flow above and fix anything broken.
All templates