Job Board Application

A full-stack job posting application built with Val Town, featuring job creation, browsing, and management.

Features

  • šŸ“ Post new job listings
  • šŸ‘€ Browse all available jobs
  • šŸ” Search and filter jobs
  • šŸ“± Responsive design
  • šŸ’¾ Persistent SQLite storage

Project Structure

ā”œā”€ā”€ backend/
│   ā”œā”€ā”€ database/
│   │   ā”œā”€ā”€ migrations.ts    # Database schema
│   │   └── queries.ts       # Database operations
│   ā”œā”€ā”€ routes/
│   │   └── jobs.ts         # Job-related API routes
│   └── index.ts            # Main Hono server
ā”œā”€ā”€ frontend/
│   ā”œā”€ā”€ components/
│   │   ā”œā”€ā”€ App.tsx         # Main React app
│   │   ā”œā”€ā”€ JobForm.tsx     # Job posting form
│   │   ā”œā”€ā”€ JobList.tsx     # Job listings display
│   │   └── JobCard.tsx     # Individual job card
│   ā”œā”€ā”€ index.html          # Main HTML template
│   └── index.tsx           # Frontend entry point
ā”œā”€ā”€ shared/
│   └── types.ts            # Shared TypeScript types
└── README.md

Tech Stack

  • Backend: Hono (TypeScript API framework)
  • Frontend: React 18.2.0 with TypeScript
  • Database: SQLite
  • Styling: TailwindCSS
  • Platform: Val Town

API Endpoints

  • GET /api/jobs - Get all jobs
  • POST /api/jobs - Create a new job
  • GET /api/jobs/:id - Get a specific job
  • PUT /api/jobs/:id - Update a job
  • DELETE /api/jobs/:id - Delete a job

Getting Started

The application is automatically deployed on Val Town. The main entry point is backend/index.ts which serves both the API and frontend assets.