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

# Trace Footprints

> Overview of the Trace Footprints platform — routes, the Footprint/Pad data model, library grouping, and the Trace + CERN sources.

**footprints.buildwithtrace.com** is a catalog, distribution hub, and community platform for
EDA **PCB footprints** — \~24,690 footprints across \~214 libraries: 15,428 from
`buildwithtrace/trace-kicad-footprints-lib` plus 9,262 from CERN. It is a
[thin client](/platforms/architecture): browsing is served from a committed JSON index, and
generation/persistence is proxied to the Trace backend. **Footprint-only** — there is no
symbol code here.

## Routes

| Route                      | Type   | Purpose                                                        |
| -------------------------- | ------ | -------------------------------------------------------------- |
| `/`                        | Server | Hero, search, stats, **Browse by Library**, popular footprints |
| `/browse`                  | Client | Search + paginated grid over all footprints                    |
| `/browse/[library]`        | Server | All footprints in one library                                  |
| `/footprint/[id]`          | Server | Detail: pad layout, pad table, copy/download                   |
| `/generate`                | Client | AI footprint generator (auth)                                  |
| `/contribute`              | Server | Upload + submit a `.kicad_mod`                                 |
| `/community`               | Client | Community-shared generated footprints                          |
| `/my-footprints`           | Client | A user's saved footprints (auth)                               |
| `/login`, `/auth/callback` | —      | Shared Trace auth                                              |

## Data model

```ts theme={null}
interface Footprint {
  id: string;
  name: string;
  library: string;                 // the .pretty library
  description: string;
  tags: string;
  padCount: number;
  pads: Array<{ number: string; type: string }>;   // type: "smd" | "thru_hole" | …
  model3d?: string | null;
  source?: "trace" | "cern";
}
```

<Info>
  **Footprints have no categories.** They are organized by **library** (the `.pretty` lib) and
  free-text `tags`. The home page and `/browse/[library]` group by library, and the homepage
  "Browse by Library" grid uses the top libraries by count.
</Info>

## Sources

Both Trace and CERN footprints are merged into one index. Each footprint records its
`source` (`trace` | `cern`); on id collisions, Trace wins de-dupe. Raw downloads are only
available for Trace footprints (CERN falls back to clipboard reconstruction) — see
[Clipboard & Download](/platforms/footprints/clipboard-and-download).

## Where to go next

<CardGroup cols={2}>
  <Card title="Browse & Search" icon="magnifying-glass" href="/platforms/footprints/browse-and-search" />

  <Card title="Generate" icon="wand-magic-sparkles" href="/platforms/footprints/generate" />

  <Card title="Contribute" icon="code-pull-request" href="/platforms/footprints/contribute" />

  <Card title="Clipboard & Download" icon="clipboard" href="/platforms/footprints/clipboard-and-download" />

  <Card title="Saved & Community" icon="users" href="/platforms/footprints/saved-and-community" />

  <Card title="API Reference" icon="code" href="/platforms/footprints/api-reference" />

  <Card title="Data Layer" icon="layer-group" href="/platforms/footprints/data-layer" />
</CardGroup>
