Freebox
2025A community marketplace for giving away free items — interest-based claims keep distribution fair, posters pick recipients, and the whole flow runs on Next.js + Prisma + Cloudinary.
Items move through an AVAILABLE → PENDING → TAKEN lifecycle. RTK Query caches API responses for snappy navigation, NextAuth handles Google sign-in, and Cloudinary stores optimized photos with drag-and-drop uploads from the post-an-item flow.


How It Works
NextAuth + the Prisma adapter handle session persistence. Items move through a state machine: a poster lists an item, interested users tap in, and the poster selects a recipient — flipping the item to PENDING and then TAKEN on hand-off. RTK Query caches API responses, Cloudinary hosts photos, and Postgres backs everything via Prisma.