Skip to content

evanchristians/take-metro

Repository files navigation

Hono Open API Starter

A starter template for building fully documented type-safe JSON APIs with Hono and Open API.

A new version of drizzle was released since the video showing this starter was made. See the drizzle-v0.35 branch and this commit for the changes required to use drizzle v0.35

For a cloudflare specific template, see the cloudflare branch on this repo and the cloudflare-drizzle-v0.35 branch

For other deployment examples see the hono-node-deployment-examples repo

Included

Setup

Clone this template without git history

npx degit w3cj/hono-open-api-starter my-api
cd my-api

Create .env file

cp .env.example .env

Install dependencies

pnpm install

Create sqlite db / push schema

pnpm drizzle-kit push

Run

pnpm dev

Lint

pnpm lint

Test

pnpm test

Code Tour

Base hono app exported from app.ts. Local development uses @hono/node-server defined in index.ts - update this file or create a new entry point to use your preferred runtime.

Typesafe env defined in env.ts - add any other required environment variables here. The application will not start if any required environment variables are missing

See src/routes/tasks for an example Open API group. Copy this folder / use as an example for your route groups.

All app routes are grouped together and exported into single type as AppType in app.ts for use in RPC / hono/client.

Endpoints

Go to /reference to see the interactive API documentation

References

About

An API for querying train schedule data for the western cape metro rail

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors