This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
CodeHeart is a Next.js 14 TypeScript application for a digital donation platform that connects donors with homeless individuals through a codeword system. Currently in prototype phase with mock data using Zustand for state management.
# Development
npm run dev # Start dev server at http://localhost:3000
npm run build # Production build
npm run start # Start production server
npm run lint # Run ESLint
# Setup
cp .env.example .env.local # Initialize environment variables- Framework: next-intl with locale-based routing
- Supported locales:
de(default),en - Routing pattern:
[locale]dynamic segment (e.g.,/de/page,/en/page) - Configuration:
src/i18n/routing.ts- defines locales and navigation utilitiessrc/middleware.ts- handles locale matching and routingmessages/de.jsonandmessages/en.json- translation files
- Usage: Import navigation utilities from
@/i18n/routing, notnext/navigationimport { Link, redirect, usePathname, useRouter } from '@/i18n/routing'
- Framework: Zustand with persistence middleware
- Location:
src/lib/stores/mock-data.ts - Mock Data: Uses
@faker-js/fakerfor generating realistic test data - Key entities:
Beneficiary,Donation,User - Store actions:
generateMockData(),login(),logout(),makeDonation(),getBeneficiaryByCodeword() - Persistence: Stored in localStorage under key
codeheart-mock-data
- UI Components: shadcn/ui components in
src/components/ui/ - Styling: Tailwind CSS with
class-variance-authorityfor variants - Theme: Light/Dark mode via
next-themes(ThemeProviderin layout) - Utilities:
src/lib/utils.tscontainscn()for className merging
@/*maps tosrc/*(configured in tsconfig.json)
External image sources allowed in next.config.mjs:
images.unsplash.comapi.dicebear.com(used for avatar generation)
- Strict mode enabled
- Use functional React components
- Prefer TypeScript interfaces for data models
- Tailwind CSS utility-first approach
- Mobile-first responsive design
- Support both light and dark themes
- WCAG 2.1 AA accessibility compliance
type/description
Examples: feature/add-donation-analytics, fix/codeword-validation, docs/update-api-guide
The application serves multiple user types:
- Donors: Make donations via codewords
- Beneficiaries: Receive donations (homeless individuals)
- Social Workers: Verify and support beneficiaries
- Investors/Sponsors: Provide funding
- Admins: Platform management
- State management will migrate from Zustand to Supabase
- Payment processing via Stripe (not yet implemented)
- GDPR/DSGVO compliance required for production
- Currently all data is mock/prototype - no real backend