> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gocopper.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Package Index

The guides on this site cover how the pieces fit together; the complete API reference for every package lives on pkg.go.dev.

### github.com/gocopper/copper

The core toolkit module.

| Package      | Description                                                            | Reference                                                              |
| ------------ | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| `copper`     | App container — composes config, logging, and lifecycle; runs your app | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper)            |
| `chttp`      | HTTP server, routing, middleware, JSON and HTML rendering              | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/chttp)      |
| `csql`       | SQL queries, context-scoped transactions, and migrations               | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/csql)       |
| `csql/qb`    | Query helpers that derive column lists from `db:` struct tags          | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/csql/qb)    |
| `cconfig`    | Layered TOML configuration with template support                       | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/cconfig)    |
| `clogger`    | Leveled, structured logging with tags, redaction, and hooks            | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/clogger)    |
| `cerrors`    | Errors with structured tags and cause chains                           | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/cerrors)    |
| `clifecycle` | App lifecycle — managed goroutines, graceful shutdown, cleanup hooks   | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/clifecycle) |
| `cmetrics`   | Prometheus counters and histograms with a declare-then-use registry    | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/copper/cmetrics)   |

### github.com/gocopper/pkg

Optional add-on packages.

| Package       | Description                                                                                               | Reference                                                            |
| ------------- | --------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `cmailer`     | Email sending via AWS SES, with a log backend for development                                             | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/cmailer)     |
| `cpubsub`     | Publish/subscribe with in-process and Redis backends                                                      | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/cpubsub)     |
| `cprometheus` | Mounts the Prometheus metrics endpoint as a Copper router                                                 | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/cprometheus) |
| `inertia`     | Server-side adapter for Inertia.js v2                                                                     | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/inertia)     |
| `vitejs`      | Vite asset integration — dev server with HMR in development, embedded manifest-based assets in production | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/vitejs)      |
| `crandom`     | Crypto-rand helpers for random codes and strings                                                          | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/crandom)     |
| `cvars`       | `cvars.Ptr` — take a pointer to any value inline                                                          | [pkg.go.dev](https://pkg.go.dev/github.com/gocopper/pkg/cvars)       |

### Test Helpers

Most packages ship a sibling `<pkg>test` package with test doubles and utilities: `chttptest`, `cconfigtest`, and `clifecycletest`, plus `clogger.NewNoop`, `clogger.NewRecorder`, and `cmetrics.NewNoopMetrics`. See [Testing](/digging-deeper/testing).
