# Nooh > A dependency-free, compile-time metaframework for building type-safe file-based Hono APIs. ## Docs - [Nooh Documentation](https://2b091e31.nooh-ts.pages.dev/docs): A zero-dependency, compile-time metaframework for building type-safe file-based Hono APIs. ## Introduction - [Introduction](https://2b091e31.nooh-ts.pages.dev/docs/introduction): What Nooh is, why it exists, and how it fits alongside Hono. - [Installation](https://2b091e31.nooh-ts.pages.dev/docs/introduction/installation): Add Nooh to an existing Hono project or scaffold a brand-new one from the official template. - [Quickstart](https://2b091e31.nooh-ts.pages.dev/docs/introduction/quickstart): Build your first type-safe Hono API with Nooh in under five minutes. - [Project structure](https://2b091e31.nooh-ts.pages.dev/docs/introduction/project-structure): A walkthrough of every file and folder in a Nooh project and what each one does. - [Why Nooh](https://2b091e31.nooh-ts.pages.dev/docs/introduction/why): The design decisions behind Nooh — what it optimizes for and what trade-offs it makes. - [Core concepts](https://2b091e31.nooh-ts.pages.dev/docs/introduction/concepts): The fundamental ideas behind Nooh — how the compiler works and how its pieces fit together. ## Routing - [Routing](https://2b091e31.nooh-ts.pages.dev/docs/routing): How Nooh maps your filesystem to HTTP routes — static paths, dynamic segments, groups, and more. - [Routes](https://2b091e31.nooh-ts.pages.dev/docs/routing/routes): Static routes, index files, and how file names map to HTTP URLs in Nooh. - [Dynamic routes](https://2b091e31.nooh-ts.pages.dev/docs/routing/dynamic-routes): URL parameters, splat segments, and how to define them in Nooh's filesystem routing. - [Methods](https://2b091e31.nooh-ts.pages.dev/docs/routing/methods): The HTTP methods Nooh supports and how to express them in file names. - [Parameters](https://2b091e31.nooh-ts.pages.dev/docs/routing/parameters): Reading and typing path parameters, query strings, and other request data in Nooh route handlers. - [Route Generation](https://2b091e31.nooh-ts.pages.dev/docs/routing/route-generation): How Nooh compiles file-based routes into typed Hono modules and native route handlers. ## Validation - [Validation](https://2b091e31.nooh-ts.pages.dev/docs/validation): Validate requests and responses with any Standard Schema-compatible library. - [Schemas & Standard Schema](https://2b091e31.nooh-ts.pages.dev/docs/validation/schemas): Using Standard Schema compliant libraries like Zod, Valibot, and ArkType in Nooh. - [Request Validation](https://2b091e31.nooh-ts.pages.dev/docs/validation/request-validation): Validating JSON body, query parameters, route parameters, headers, and cookies. - [Response Validation](https://2b091e31.nooh-ts.pages.dev/docs/validation/response-validation): Guarantee API output contracts and prevent leaking sensitive data. ## Error Handling - [Error Handling](https://2b091e31.nooh-ts.pages.dev/docs/error-handling): Handle errors gracefully with typed error factories, per-route handlers, and global fallbacks. - [Errors](https://2b091e31.nooh-ts.pages.dev/docs/error-handling/errors): Defining custom domain errors, error hierarchy, and type-safe error propagation. - [Error Handlers](https://2b091e31.nooh-ts.pages.dev/docs/error-handling/error-handlers): Catch and format uncaught exceptions with global and group-level error handlers. - [HTTP Errors](https://2b091e31.nooh-ts.pages.dev/docs/error-handling/http-errors): Using Hono's HTTPException and standard status codes in Nooh APIs. ## Dependency Injection - [Dependency Injection](https://2b091e31.nooh-ts.pages.dev/docs/dependency-injection): Declare services, assign scopes, and let the compiler wire them into your handlers at build time. - [DI Concepts](https://2b091e31.nooh-ts.pages.dev/docs/dependency-injection/concepts): Core concepts behind Nooh's compile-time dependency injection system. - [Providers](https://2b091e31.nooh-ts.pages.dev/docs/dependency-injection/providers): The four provider functions in Nooh — singleton, request, transient, and value. - [Scopes & Lifetime Hierarchy](https://2b091e31.nooh-ts.pages.dev/docs/dependency-injection/scopes): Understand scope inheritance rules, captive dependencies, and compile-time lifetime validation. - [Advanced DI & Testing](https://2b091e31.nooh-ts.pages.dev/docs/dependency-injection/advanced): Circular dependency detection, reserved names, modular containers, and mocking in tests. ## RPC Client - [RPC Client](https://2b091e31.nooh-ts.pages.dev/docs/rpc): Build end-to-end type-safe applications using Hono's native client (hc) and Nooh's generated AppType. ## Tools - [Tools](https://2b091e31.nooh-ts.pages.dev/docs/tools): The Nooh CLI, code generation pipeline, and development workflow. - [CLI](https://2b091e31.nooh-ts.pages.dev/docs/tools/cli): Command-line interface for compiling, watching, and running Nooh applications. - [Code Generation & Compiler Pipeline](https://2b091e31.nooh-ts.pages.dev/docs/tools/code-generation): How the Nooh compiler processes your project and transforms files into code. - [Development Workflow](https://2b091e31.nooh-ts.pages.dev/docs/tools/development): Best practices for developing, debugging, and running Nooh projects locally. ## Reference - [Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference): Complete API, CLI, configuration, type definitions, and error code reference for Nooh. - [Configuration Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference/configuration): Complete specification for nooh.config.ts and group.ts configuration files. - [CLI Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference/cli): Detailed reference for the @nooh-ts/cli command-line utility. - [Compiler API Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference/compiler): Programmatic API for @nooh-ts/compiler and bundler plugins. - [Generated API Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference/generated-api): Specification of all generated code, helper functions, and modules in .nooh. - [Types Reference](https://2b091e31.nooh-ts.pages.dev/docs/reference/types): Complete catalog of TypeScript interfaces, types, and generics exported by @nooh-ts/nooh. - [Compiler Diagnostics & Error Codes](https://2b091e31.nooh-ts.pages.dev/docs/reference/errors): Complete catalog of NOOHxxx diagnostic codes emitted by the compiler. ## Agent resources - [llms-full.txt](https://2b091e31.nooh-ts.pages.dev/llms-full.txt): The full Markdown of every page in one file. - [Page Markdown](https://2b091e31.nooh-ts.pages.dev/index.md): Append `.md` to any page URL to fetch that page as raw Markdown. - [JSON API](https://2b091e31.nooh-ts.pages.dev/api/docs/pages.json): Page index of the JSON docs API; each entry links the page's JSON and Markdown forms. Described by the OpenAPI document at https://2b091e31.nooh-ts.pages.dev/openapi.json. - [API catalog](https://2b091e31.nooh-ts.pages.dev/.well-known/api-catalog): RFC 9727 linkset of the APIs documented here. - [agent-readability.json](https://2b091e31.nooh-ts.pages.dev/agent-readability.json): Manifest of every agent-facing artifact on this site. - [Sitemap](https://2b091e31.nooh-ts.pages.dev/sitemap.xml): Every indexable page URL with its last-modified date.