Public
Remixed
Starter template with client-side React & Hono server
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data โ€“ all from the browser, and deployed in milliseconds.

๐Ÿ† Win Wall

A wall of testimonials / wins. People can submit testimonials, an admin can approve or reject them, and approved ones appear on the public wall.

Pages

  • / โ€” Public win wall showing approved testimonials
  • /submit โ€” Form for anyone to submit a testimonial
  • /admin โ€” Admin panel to approve, reject, or delete testimonials

Architecture

Rendering mermaid diagram...

Project Structure

index.ts              โ€” Hono HTTP server (entrypoint)
api/
  testimonials.ts     โ€” REST API routes
database/
  queries.ts          โ€” SQLite query functions
shared/
  types.ts            โ€” TypeScript types shared between frontend & backend
frontend/
  index.html          โ€” HTML shell
  index.tsx           โ€” React entry point
  api.ts              โ€” Client-side API helpers
  hooks/
    useRoute.ts       โ€” Simple client-side router hook
  components/
    App.tsx            โ€” Root component with routing
    Nav.tsx            โ€” Navigation bar
    TestimonialCard.tsx โ€” Card for the public wall
    AdminCard.tsx      โ€” Card with approve/reject/delete actions
  pages/
    WallPage.tsx       โ€” Public testimonials wall
    SubmitPage.tsx     โ€” Submission form
    AdminPage.tsx      โ€” Admin management panel