---
title: "@pitlane/content"
description: "Schema-validated, cross-referenced content collections for Remix 3."
url: "https://pitlane.tools/package/content/"
---

# @pitlane/content

Schema-validated, cross-referenced content collections for Remix 3.

[createContent](https://pitlane.tools/package/content/function/createContent.md) declares collections of Markdown, MDX, JSON, and YAML entries, each read by a loader from `@pitlane/content/loaders` and validated by a Standard Schema, and returns a client a controller queries with `getCollection()` and `getEntry()`. The entry types come from the schemas, with nothing generated.

## See

- [Content guide](https://pitlane.tools/guides/content.md)
- [Content guide, without a build](https://pitlane.tools/guides/content-no-build.md)

## Interfaces

- [Collection](https://pitlane.tools/package/content/interface/Collection.md). The query surface of one collection.
- [CollectionDefinition](https://pitlane.tools/package/content/interface/CollectionDefinition.md). What `c.collection({ loader, schema })` returns.
- [ContentBuilder](https://pitlane.tools/package/content/interface/ContentBuilder.md). The builder `createContent` hands to its callback.
- [ContentLoader](https://pitlane.tools/package/content/interface/ContentLoader.md). A loader that resolves a whole collection by filling a store.
- [Entry](https://pitlane.tools/package/content/interface/Entry.md). One entry of a collection, as a caller sees it.
- [EntryBody](https://pitlane.tools/package/content/interface/EntryBody.md). The raw source of an entry's document, before anything renders it.
- [GenerateIdOptions](https://pitlane.tools/package/content/interface/GenerateIdOptions.md). Options handed to a `loaders.glob` `generateId` function.
- [Heading](https://pitlane.tools/package/content/interface/Heading.md). A heading collected from a Markdown or MDX document.
- [LiveEntry](https://pitlane.tools/package/content/interface/LiveEntry.md). What a [LiveLoader](https://pitlane.tools/package/content/interface/LiveLoader.md) returns for one entry.
- [LiveLoader](https://pitlane.tools/package/content/interface/LiveLoader.md). A loader that answers one query at a time.
- [LoadedEntry](https://pitlane.tools/package/content/interface/LoadedEntry.md). What a [ContentLoader](https://pitlane.tools/package/content/interface/ContentLoader.md) writes into the store for one entry.
- [LoaderContext](https://pitlane.tools/package/content/interface/LoaderContext.md). What a loader is handed to read its source and validate what it found.
- [Reference](https://pitlane.tools/package/content/interface/Reference.md). A resolved pointer from one entry to another, produced by `c.reference(collection)`.
- [RenderedEntry](https://pitlane.tools/package/content/interface/RenderedEntry.md). What `entry.render()` resolves to.

## Type Aliases

- [CollectionEntry](https://pitlane.tools/package/content/type/CollectionEntry.md). One entry of `collection`, named the way an application thinks of it: `CollectionEntry<typeof content.blog>`.
- [Content](https://pitlane.tools/package/content/type/Content.md). The object `createContent` returns: one [Collection](https://pitlane.tools/package/content/interface/Collection.md) per key of the definitions its callback returned, named after that key and typed by the output of that collection's schema.
- [Loader](https://pitlane.tools/package/content/type/Loader.md). Either kind of loader.
- [ReferenceSchema](https://pitlane.tools/package/content/type/ReferenceSchema.md). The schema `c.reference(collection)` returns: a Standard Schema that reads an entry id (a string) and outputs a [Reference](https://pitlane.tools/package/content/interface/Reference.md) into `collection`.

## Functions

- [createContent](https://pitlane.tools/package/content/function/createContent.md). Declares a set of content collections.
