A comprehensive platform for guitarists to find work opportunities and connect with fellow musicians through real-time chat.
āāā backend/
ā āāā database/
ā ā āāā migrations.ts # Database schema for messages, jobs, and applications
ā ā āāā queries.ts # Database query functions
ā āāā index.ts # Main Hono server with job and chat APIs
āāā frontend/
ā āāā components/
ā ā āāā App.tsx # Main app with tabbed interface
ā ā āāā ChatMessage.tsx # Chat message component
ā ā āāā MessageInput.tsx # Chat input component
ā ā āāā JobBoard.tsx # Job listings and management
ā ā āāā JobPosting.tsx # Individual job display and application
ā ā āāā JobPostingForm.tsx # Job creation form
ā āāā index.html # Main HTML template
ā āāā index.tsx # React entry point
āāā shared/
āāā types.ts # Shared TypeScript types for chat and jobs
GET /api/messages - Get recent chat messagesPOST /api/messages - Send a new chat messageGET /api/events - SSE endpoint for real-time chat updatesGET /api/jobs - Get job postings (with optional status filter)GET /api/jobs/:id - Get specific job detailsPOST /api/jobs - Create a new job postingPATCH /api/jobs/:id/status - Update job statusGET /api/jobs/:id/applications - Get applications for a jobPOST /api/jobs/:id/apply - Apply to a specific jobThe platform automatically handles job status management and provides a seamless experience for both job seekers and job posters in the guitar community.