hoa

Build portable HTTP apps and middleware for the Hoa web framework.

85|3|Updated Sep 25, 2025
One-click install
npx skills add https://github.com/hoa-js/hoa --skill hoa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: hoa
Source: https://github.com/hoa-js/hoa/tree/main
Command: npx skills add https://github.com/hoa-js/hoa --skill hoa

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Hoa helps you build modern HTTP applications that run across many JavaScript runtimes without rewriting your server logic or adding platform-specific adapters.

Core Features & Use Cases

  • Web Standards First: Work directly with Request, Response, Headers, and ReadableStream primitives.
  • Koa-Style Middleware: Compose async middleware with ctx.req and ctx.res mutation for clear request/response handling.
  • Multi-Runtime Deployment: Ship the same app to Cloudflare Workers, Deno, Bun, Vercel Edge, AWS Lambda, Lambda@Edge, Fastly Compute, and Node.js.
  • Use Case: Build APIs, edge functions, proxy handlers, and reusable middleware bundles for portable deployment across environments.

Quick Start

Ask for a minimal Hoa app that returns a plain-text Hello, Hoa! response from an async middleware handler.

Frequently Asked Questions about hoa

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a web app that runs on both Cloudflare Workers and AWS Lambda?

Build portable web apps using a single Koa-style Fetch API. Designing your HTTP applications with standard Request and Response primitives allows the same codebase to deploy across Cloudflare Workers, AWS Lambda, Deno, and Bun without platform-specific adapters.

Does this middleware framework support async composition and context mutation?

Yes, the middleware framework supports async composition with context-aware mutation. You can compose async middleware using ctx.req and ctx.res mutation, enabling clear request and response handling while processing routing-free handlers, proxy workflows, and JSON APIs.

What is the best way to write edge functions for multiple JavaScript runtimes?

The best way to write portable edge functions is using Web Standards Request and Response primitives. This approach lets you ship reusable extensions and proxy handlers to Cloudflare Workers, Vercel Edge, Lambda@Edge, and Fastly Compute without rewriting server logic.

Can I use Koa-style middleware with Web Fetch API primitives?

Yes, you can use Koa-style middleware with Fetch API primitives. The framework composes async middleware that directly mutates context-aware Request and Response objects, allowing you to handle errors with status and header validation natively across edge runtimes and Node.js.

Why do I need Web Standards Request and Response primitives for serverless apps?

Web Standards Request and Response primitives are needed for serverless apps to ensure multi-runtime deployment compatibility. Working directly with standard Headers and ReadableStream objects prevents vendor lock-in, allowing the exact same HTTP application to execute on Deno, Bun, and Vercel Edge.