# Documentation

> Concepts and API references for the @hulla/* packages.

Follow a [guide](https://hulla.dev/guides.md) to build a project, or look up a package below.

## Browse by package

- [@hulla/api](https://hulla.dev/docs/api.md): Type-check HTTP requests, handlers, and clients against one shared contract, across the hosts and transports your app uses.
- [Components & styling](https://hulla.dev/docs/ui.md): Editable components for Astro, React, and Solid, with the same tokens, variants, and interaction rules.
- [@hulla/gittar](https://hulla.dev/docs/gittar.md): Copy a repository folder into a starter project, with a separate cache and an explicit refresh policy.
- [@hulla/control](https://hulla.dev/docs/control.md): Return typed success or failure values so callers can handle expected errors before transforming the result.
- [@hulla/style](https://hulla.dev/docs/style.md): Define class variants once and infer the component props from their keys, in any framework.
- [@hulla/db](https://hulla.dev/docs/db.md): Read and write your own PostgreSQL database with a typed SDK, and refresh subscribed browser queries after committed writes.
- [hulla CLI](https://hulla.dev/docs/cli.md): Copy UI components into your project as editable source, then review updates through the same CLI.
- [@hulla/args](https://hulla.dev/docs/args.md): Parse flags, positionals, and nested commands into typed values, with Zod validation and access to the raw input.
