CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/hono-best-practices

Production Hono patterns — zValidator hooks, typed generics, error handling, middleware composition, testing, and multi-runtime deployment

87

2.57x
Quality

80%

Does it follow best practices?

Impact

98%

2.57x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

task.mdevals/scenario-1/

Build a Bookmark Manager API

Problem/Feature Description

Build a personal bookmark manager API using Hono and TypeScript, targeting Bun.

Endpoints:

  • POST /api/bookmarks -- create a bookmark (fields: url, title, tags array, description optional)
  • GET /api/bookmarks -- list all bookmarks, optionally filtered by tag via query param ?tag=
  • GET /api/bookmarks/:id -- get a single bookmark
  • PATCH /api/bookmarks/:id -- update a bookmark's title, tags, or description
  • DELETE /api/bookmarks/:id -- delete a bookmark

Business rules:

  • URL must be a valid URL and unique across all bookmarks
  • Title is required and max 200 characters
  • Tags must be an array of lowercase strings, max 10 tags
  • Timestamps (createdAt, updatedAt) are set automatically

Use in-memory storage.

Output Specification

Produce:

  • src/app.ts -- Hono application with middleware and routes
  • src/index.ts -- Bun entry point
  • src/routes/bookmarks.ts -- bookmark CRUD handlers
  • src/schemas.ts -- Zod schemas for validation
  • package.json -- with dependencies listed (no need to install)

You may create additional files as needed.

evals

scenario-1

criteria.json

task.md

tile.json