JobBoard - Job Posting & Community Chat App

A full-stack job posting platform with an integrated community chat room where users can post job opportunities, browse listings, and discuss opportunities in real-time.

Features

Job Postings

  • šŸ“‹ Post Jobs: Create detailed job listings with company info, requirements, and contact details
  • šŸ” Search & Filter: Search by title, company, location, and filter by job type
  • šŸ’¼ Job Types: Support for full-time, part-time, contract, and internship positions
  • 🌐 Remote Work: Mark positions as remote-friendly
  • šŸ“§ Direct Contact: One-click email application to job posters

Community Chat

  • šŸ’¬ Real-time Chat: Public chat room for discussing opportunities
  • šŸ”— Job Sharing: Share specific job postings directly in chat
  • šŸ‘„ Community: Network with other job seekers and recruiters
  • ⚔ Live Updates: Auto-refreshing messages and job listings

User Experience

  • šŸ“± Responsive Design: Works seamlessly on desktop and mobile
  • šŸŽØ Modern UI: Clean, professional interface with smooth animations
  • šŸ’¾ Persistent Identity: Username saved locally for convenience
  • šŸ”„ Auto-refresh: Real-time updates every 5 seconds

Project Structure

ā”œā”€ā”€ backend/
│   └── index.ts             # Hono server with SQLite database and REST API
ā”œā”€ā”€ frontend/
│   ā”œā”€ā”€ index.html           # Main application template
│   ā”œā”€ā”€ index.tsx            # React components and app logic
│   └── style.css            # Custom styling and animations
ā”œā”€ā”€ shared/
│   └── types.ts             # Shared TypeScript interfaces
└── README.md

Database Schema

Jobs Table (job_postings_v1)

  • Job details (title, company, location, type, remote)
  • Salary information (optional)
  • Description and requirements
  • Contact information and poster name
  • Timestamp tracking

Chat Table (chat_messages_v1)

  • Message content and metadata
  • Username and timestamp
  • Message types (regular message or job share)
  • Job references for shared postings

API Endpoints

Jobs

  • GET /api/jobs - Fetch all job postings
  • POST /api/jobs - Create new job posting
  • GET /api/jobs/:id - Get specific job details

Chat

  • GET /api/chat - Fetch recent chat messages
  • POST /api/chat - Send new chat message

Usage

For Job Seekers

  1. Enter your name in the header
  2. Browse job listings with search and filters
  3. Apply directly via email or share interesting jobs in chat
  4. Join community discussions about opportunities

For Recruiters/Employers

  1. Enter your name in the header
  2. Navigate to "Post a Job" tab
  3. Fill out the detailed job posting form
  4. Engage with candidates in the community chat

Community Features

  • Share job postings in chat for discussion
  • Ask questions about companies or roles
  • Network with other professionals
  • Get real-time updates on new opportunities

Technical Details

  • Backend: Hono framework with SQLite database
  • Frontend: React 18 with TypeScript
  • Styling: TailwindCSS for responsive design
  • Real-time: Auto-refreshing data every 5 seconds
  • Storage: Local storage for username persistence
  • Deployment: Val Town serverless platform

Getting Started

  1. The app is ready to use immediately - no setup required
  2. Visit the HTTP endpoint to access the application
  3. Enter your name to start posting jobs or chatting
  4. All data is automatically saved and synchronized

Perfect for communities, organizations, or teams looking to share job opportunities and foster networking discussions!