How rudra7700/workbridge-platform works
WorkBridge is a Next.js employment marketplace connecting workers and employers. Its central user journey is account creation and role setup, followed by role-specific dashboards and job discovery or management; the tree also shows job creation, applications, and payment endpoints. Separate product branches provide AI chat, language and voice translation, and document administration. The excerpts establish authentication, profile persistence, the AI chat request, and voice synthesis wiring; many marketplace and API implementations were not sampled, so their internal connections are intentionally omitted.
Main entry points: AuthContext.tsx Auth Context · supabase-client.ts Supabase Client · voice-translate/route.ts Voice Translation API · callback/route.ts Auth Callback
Components 21
Identity and Profiles
- Sign Up
src/app/signup/page.tsx - Auth Context
src/contexts/AuthContext.tsx - Auth Callback
src/app/auth/callback/route.ts - Profiles
src/app/auth/callback/route.ts
Job Marketplace
- Employer Dashboard
src/app/employer/dashboard/page.tsx - Worker Dashboard
src/app/worker/dashboard/page.tsx - Jobs and Applications
src/app/jobs/page.tsx - Job Details
src/app/jobs/[id]/page.tsx - Create Job
src/app/jobs/create/page.tsx
AI and Language
- AI Chat Widget
src/components/AIChatWidget.tsx - AI Chat API
src/app/api/ai-chat/route.ts - Voice Translation API
src/app/api/voice-translate/route.ts - Speech Synthesis
src/lib/elevenlabs.ts - Text Translation
src/app/api/translate-text/route.ts - Translator
src/app/translator/page.tsx
Payments and Admin
- Payment APIs
src/app/api/payments/create-order/route.ts - Document Admin
src/app/admin/documents/page.tsx
Application Data
- Supabase Client
src/lib/supabase-client.ts
Other components
- User
- OpenAI
- ElevenLabs
Connections 18
- User → Sign Up: starts account
- Sign Up → Auth Context: uses auth
src/app/signup/page.tsx - Auth Context → Supabase Client: creates client
src/contexts/AuthContext.tsx - Auth Callback → Supabase Client: creates client
src/app/auth/callback/route.ts - Auth Callback → Profiles: creates profile
src/app/auth/callback/route.ts - Employer Dashboard → Auth Context: reads identity
src/app/employer/dashboard/page.tsx - Employer Dashboard → Supabase Client: queries data
src/app/employer/dashboard/page.tsx - Worker Dashboard → Auth Context: reads identity
src/app/worker/dashboard/page.tsx - Worker Dashboard → Supabase Client: queries data
src/app/worker/dashboard/page.tsx - User → Jobs and Applications: browses jobs
- User → Create Job: creates listing
- AI Chat Widget → AI Chat API: posts messages
src/components/AIChatWidget.tsx - User → Voice Translation API: sends voice chat
- Voice Translation API → OpenAI: generates reply
src/app/api/voice-translate/route.ts - Voice Translation API → Speech Synthesis: requests speech
src/app/api/voice-translate/route.ts - Speech Synthesis → ElevenLabs: synthesizes audio
src/lib/elevenlabs.ts - User → Translator: translates text
- Translator → Text Translation: requests translation