# Overview
URL: /docs
LLM index: /llms.txt
Description: Write your storage layer once and let Farming Labs ORM handle the translation across databases and ORM stacks.

import { DocsMcpAccess } from "@/components/ui/docs-mcp-access";
import { DocsOverviewFeatures } from "@/components/ui/features";

# Overview

Farming Labs ORM lets you write your storage layer once, then handles the
translation across databases and ORM stacks underneath.

Library authors and framework authors can keep one schema definition and one
storage-facing API while letting each app choose how that gets generated or
executed.

The model is simple:

1. Define a schema in `@farming-labs/orm`
2. Generate Prisma, Drizzle, or SQL artifacts with `@farming-labs/orm-cli`
3. Run the same typed API through a runtime driver

In practice, that means:

- one storage layer for shared packages
- one typed ORM and query surface for runtime code
- one schema definition that can translate across databases and ORM stacks
- one generator CLI for app-side artifacts

<DocsOverviewFeatures />
<DocsMcpAccess />

## Start here

1. [Getting started](/docs/getting-started)
2. [Unified schema](/docs/schema)
3. [Runtime](/docs/runtime)
4. [Integrations](/docs/integrations)
5. [Support matrix](/docs/integrations/support-matrix)
6. [Changelogs](/changelogs)
7. [Use cases](/docs/use-cases)