Skip to content

Latest commit

 

History

History
125 lines (101 loc) · 5.07 KB

File metadata and controls

125 lines (101 loc) · 5.07 KB

Canteen x Tempo Hackathon — Project Brief

Schedule

  • Feb 11-13: Onboarding, ideation, team formation
  • Feb 13: Kickoff keynote (Zoom)
  • Feb 13-15: Build phase
  • Feb 15 9AM ET: Submissions due (Tally form: https://tally.so/r/ZjErEz)
  • Feb 15 1-3PM: Judging (async)
  • Feb 15 3-4PM: Awards ceremony (Zoom)

Prizes

Place Prize
1st $3,500
2nd $1,500
3rd $500

All winners get featured project spotlights with Tempo & Canteen.


Our Track: Track 1 — Consumer Payments & Social Finance

Why Track 1:

  • REQUIRES Privy for wallet infrastructure — we already use @privy-io/react-auth
  • "Payment Requests & Invoicing" is literally listed as a suggested project idea
  • Our features align: transferWithMemo reconciliation, public payment links, batch payouts, fee sponsorship
  • Consumer-grade UX with no crypto jargon — fits the "Venmo-like, no crypto knowledge needed" brief

Judging Criteria & Our Self-Assessment

Criterion Weight Our Score Notes
Technical Implementation 30% 7.5/10 14 API routes, 5 blockchain hooks, Prisma + Neon DB, on-chain reconciliation. Gap: raw viem instead of recommended tempo.ts SDK
Innovation 25% 6/10 Solid idea but it's a suggested project — others may build similar. Auto-reconciliation via memo matching is our unique twist
User Experience 20% 8/10 Polished dark UI, 3D landing page, public payment links, clear dashboard flow
Ecosystem Impact 15% 8/10 Real business tool Tempo needs. Stablecoin accounting/invoicing fills a genuine gap
Presentation 10% TBD Depends on demo video quality

Weighted score (excl. presentation): ~7.2/10

Prize Probability

Prize Probability Key Factor
1st ($3,500) 20-30% Risk: others use official SDK, more novel ideas emerge
2nd ($1,500) 25-35% Strong tech depth + ecosystem fit
3rd ($500) 15-20% If competition is fierce
Top 3 overall ~55-65% Feature completeness puts us well ahead of most entries

What's Built (Complete Feature List)

Pages (13 dashboard pages + landing)

  1. Landing Page — 3D animated book, feature highlights, CTA
  2. Dashboard — Overview stats, recent invoices, quick actions
  3. Invoices List — Filter/search, status badges, bulk actions
  4. Invoice Detail — Full invoice view, payment status, share link
  5. Create Invoice — Multi-token, memo, due date, contact picker
  6. Payments — Batch payouts with parallel tx execution
  7. Contacts — Address book with wallet addresses
  8. Books / Ledger — Transaction ledger with categorization
  9. Payment Links — Public shareable payment URLs
  10. Recurring Invoices — Automated invoice scheduling
  11. Create Recurring — Set frequency, amount, recipient
  12. Swap — DEX integration for stablecoin swaps
  13. Reports — P&L, cash flow, charts (Recharts)
  14. Settings — Business info, default token, tax rate

Backend (14 API routes)

  • /api/invoices (CRUD + stats + reconcile)
  • /api/contacts (CRUD)
  • /api/transactions (GET/POST)
  • /api/settings (GET/PUT with upsert)
  • /api/recurring (CRUD + generate)
  • /api/reconcile/watch (blockchain polling)
  • /api/swaps (GET/POST)
  • /api/reports (P&L generation)

Blockchain Hooks (5)

  • useTokenBalances — Multi-token balance fetching
  • useTransferWithMemo — TIP-20 transfers with ISO 20022 memos
  • useBatchPayout — Parallel batch transfers with 2D nonce
  • useSwap — DEX approve + exactInput flow
  • useReconcile — Auto-match payments to invoices via memo

Key Tempo Primitives Used

  • transferWithMemo (32-byte memos for invoice matching)
  • 2D nonce architecture (parallel batch transactions)
  • Enshrined DEX (stablecoin swaps)
  • Fee sponsorship ready
  • Privy embedded wallets (email/phone onboarding)

Strengths for Demo

  1. Complete app — Most hackathon entries are half-baked; ours has 13 working pages
  2. Killer demo flow: Landing → Sign up with email → Create invoice → Share payment link → Recipient pays → Auto-reconciliation → See in books/reports
  3. Real utility — Judges love practical tools that could actually be used
  4. On-chain reconciliation — Unique technical feature matching memos to invoices

Known Weaknesses

  1. Not using tempo.ts SDK — Uses raw viem with manual ABIs instead of recommended SDK
  2. Suggested idea — "Payment Requests & Invoicing" is listed in hackathon ideas, so not fully original
  3. Float for money — Prisma schema uses Float instead of Decimal for monetary fields
  4. No foreign key relations in Prisma schema

Tech Stack

  • Next.js 16.1.6, React 19.2.3, TypeScript
  • Prisma 5.22.0 + Neon PostgreSQL
  • Viem 2.45.3 (Tempo Moderato chain)
  • Privy (@privy-io/react-auth)
  • TanStack React Query
  • shadcn/ui + Tailwind CSS
  • Recharts (reports/charts)
  • Sonner (toast notifications)
  • Deployed on Vercel

Test Wallets

5 pre-funded wallets with 1M tokens each (private keys in hackathon docs).