Stablecoin-enabled group expense splitting.
walipay helps small groups track shared expenses, calculate the minimum set of settlements, and record stablecoin-based payments for repayment flows.
Current product scope includes:
- Group creation and member management
- Expense tracking and settlement calculation
- Notes and AI-assisted group analysis
- Stablecoin payment flow UI for USDC, JPYC, and EURC on Sepolia
- Transaction history and exchange-rate support
- Next.js 14 App Router
- React 18 and TypeScript
- Tailwind CSS, shadcn/ui, and Radix UI
- Supabase (PostgreSQL)
- Privy, wagmi, and viem
- Bun for package management
- Sepolia testnet only
- TDD is required for implementation work
bun install
cp .env.example .env.local
bun devOpen http://localhost:3000.
Populate .env.local with values for:
- Supabase project URL and anon key
- Privy app ID and client ID
- Alchemy RPC key
- Sepolia token contract addresses used by the app
See the setup guides in docs/getting-started.md and docs/web3.md for the full configuration flow.
bun dev
bun run build
bunx vitest run
bunx vitest run --coverage
bun run test:e2e
bun run test:e2e:blockchainPushes deploy automatically through GitHub Actions and Vercel.
mainpushes deploy to production- other branch pushes deploy to preview
- GitHub repository secret
VERCEL_TOKENis required
app/ Next.js routes and API handlers
components/ UI components
hooks/ Client-side hooks
lib/ Shared business logic and utilities
docs/ Product and engineering documentation
e2e/ Playwright end-to-end tests
supabase/ Database-related assets
docs/progress.mdfor the current implementation statusdocs/getting-started.mdfor onboardingdocs/architecture.mdfor system structuredocs/database.mdfor schema detailsdocs/web3.mdfor blockchain integration notesdocs/testing.mdfor testing rulesdocs/browser-verification.mdfor UI verification workflow
This project uses Vitest for unit and component tests, and Playwright for end-to-end coverage. Follow the repository testing rules in docs/testing.md, especially the behavior-focused testing guidance for Web3 integrations.