BulkBridge is a hackathon full-stack app for organizing Costco trips inside local communities and splitting bulk items fairly.
- Authentication (register/login/logout)
- Community system with distance-based browsing, create community, and join/set active community
- Costco trip creation by day of week + pickup location/date
- Trip cards showing:
- runner name
- completed trips count
- rating (average)
- number of attached orders
- Order attachment to trips with multipack unit claims (example: 3-pack bread -> claim 1 loaf)
- Incentive system where runners earn simulated Costco store credit when trips are completed
- AI pantry assistant:
- speech-to-text in browser
- Gemini-powered pantry extraction and recipe suggestions
- fallback heuristic mode if
GEMINI_API_KEYis not set
- Costco grocery dataset ingestion from
costco_bulk_grocery_dataset_900_items.csv
- Next.js (App Router + API routes)
- Prisma + SQLite
- JWT cookie auth
- Gemini API (optional)
- Install dependencies:
npm install- Create
.envfrom.env.example:
cp .env.example .env- Initialize database schema:
npx prisma db push- Seed Costco items + starter communities:
npm run db:seed- Start development server:
npm run devOpen http://localhost:3000.
POST /api/auth/registerPOST /api/auth/loginPOST /api/auth/logoutGET|POST|PUT /api/communitiesGET|POST /api/tripsPOST /api/trips/:id/ordersPOST /api/trips/:id/completeGET /api/items?q=...POST /api/pantry/analyze
- Speech capture uses
SpeechRecognition/webkitSpeechRecognitionin supported browsers. - Pantry assistant calls Gemini when
GEMINI_API_KEYis configured.