Job Board & Chat App

A full-stack application for posting job opportunities and discussing them in a public chat room.

Features

  • šŸ“ Post job listings with title, company, description, and requirements
  • šŸ’¬ Public chat room for discussing opportunities
  • šŸ” Browse and search job postings
  • šŸ“± Responsive design with TailwindCSS

Project Structure

ā”œā”€ā”€ backend/
│   ā”œā”€ā”€ database/
│   │   ā”œā”€ā”€ migrations.ts    # Database schema setup
│   │   └── queries.ts       # Database query functions
│   ā”œā”€ā”€ routes/
│   │   ā”œā”€ā”€ jobs.ts         # Job posting API routes
│   │   └── chat.ts         # Chat API routes
│   └── index.ts            # Main Hono server
ā”œā”€ā”€ frontend/
│   ā”œā”€ā”€ components/
│   │   ā”œā”€ā”€ App.tsx         # Main application component
│   │   ā”œā”€ā”€ JobBoard.tsx    # Job listings component
│   │   ā”œā”€ā”€ JobForm.tsx     # Job posting form
│   │   └── ChatRoom.tsx    # Chat room component
│   ā”œā”€ā”€ index.html          # Main HTML template
│   └── index.tsx           # Frontend entry point
└── shared/
    └── types.ts            # Shared TypeScript types

Tech Stack

  • Backend: Hono (TypeScript API framework)
  • Database: SQLite
  • Frontend: React 18.2.0 with TypeScript
  • Styling: TailwindCSS
  • Real-time: Polling for chat updates

API Endpoints

Jobs

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

Chat

  • GET /api/chat/messages - Get chat messages
  • POST /api/chat/messages - Send a chat message

Getting Started

The app is automatically deployed on Val Town. Visit the HTTP endpoint to start using the application.