← Back to Projects
DONOS logo

DONOS

Live

A donation page for creators, as simple as a Cash App link. Sign up, get your own donate link, and accept one-time or monthly support through Stripe Connect, paid straight to your bank. Supporters can leave a message, give anonymously, and show up on the leaderboard.

Screenshots

What It Does

  • →Creators sign up, pick a username, and instantly get a link to share anywhere: donos.thewoob.com/donate/username
  • →Supporters pick a preset or custom amount, choose one-time or monthly, leave a message, and can give anonymously
  • →Money goes straight to the creator through Stripe Connect, with no manual payouts and no platform holding funds
  • →A creator dashboard with total raised, donation history, recurring supporters, and a goal progress bar
  • →A public Discover page to find creators, plus a top donors leaderboard
  • →Installs to a phone or desktop home screen as an app (PWA)

What I Built

  • →Next.js App Router with server and client components, NextAuth credential sign-in, and protected dashboard routes
  • →Prisma with SQLite for users, donations, and each creator's Stripe account state
  • →Stripe Connect onboarding so creators link their own bank, Stripe Checkout for one-time gifts, and Stripe Subscriptions for monthly support with cancellation
  • →Stripe webhooks that confirm each payment and update donation records in real time
  • →Rate limiting on sign-up, checkout, and subscription endpoints to block abuse
  • →A web app manifest and service worker so it installs and opens like a native app

Payments run in Stripe test mode for this showcase.