> Discover all available pages from the documentation index: https://mastra.ai/llms.txt

# Overview

This reference provides comprehensive information about Mastra templates, including how to use existing templates, create your own, and contribute to the community ecosystem.

Mastra templates are pre-built project structures that demonstrate specific use cases and patterns. They provide:

- **Working examples**: Complete, functional Mastra applications
- **Best practices**: Proper project structure and coding conventions
- **Educational resources**: Learn Mastra patterns through real implementations
- **Quickstarts**: Bootstrap projects faster than building from scratch

## Available templates

The following templates demonstrate Gateway-first Mastra applications:

- `template-docs-expert`: Answers documentation questions with Mastra Gateway web search, citations, memory, and structured responses.
- `template-browser-agent`: Uses AgentBrowser to browse, inspect, and interact with web pages.
- `template-meeting-notes`: Turns Zoom transcripts or uploaded transcripts into structured notes with decisions and action items.
- `template-company-knowledge`: Indexes Linear and Notion content into pgvector and answers internal knowledge questions.
- `template-claw-assistant`: Operates a workspace with filesystem, sandbox, browser, and web-search tools.

## Using templates

### Installation

Install a template using the `create-mastra` command:

**npm**:

```sh
npx create-mastra@latest --template template-name
```

**pnpm**:

```sh
pnpm dlx create-mastra@latest --template template-name
```

**Yarn**:

```sh
yarn dlx create-mastra@latest --template template-name
```

**Bun**:

```sh
bun x create-mastra@latest --template template-name
```

This creates a complete project with all necessary code and configuration.

### Setup Process

After installation:

1. **Navigate to project directory**:

   ```bash
   cd your-project-name
   ```

2. **Configure environment variables**:

   ```bash
   cp .env.example .env
   ```

   Edit `.env` with required API keys as documented in the template's README.

3. **Install dependencies** (if not done automatically):

   **npm**:

   ```sh
   npm install
   ```

   **pnpm**:

   ```sh
   pnpm install
   ```

   **Yarn**:

   ```sh
   yarn install
   ```

   **Bun**:

   ```sh
   bun install
   ```

4. **Start development server**:

   **npm**:

   ```sh
   npm run dev
   ```

   **pnpm**:

   ```sh
   pnpm run dev
   ```

   **Yarn**:

   ```sh
   yarn dev
   ```

   **Bun**:

   ```sh
   bun run dev
   ```

### Template structure

All templates follow this standardized structure:

```text
your-template/
├── src/
│   └── mastra/
│       ├── agents/       # Agent definitions
│       ├── tools/        # Tool definitions
│       ├── workflows/    # Workflow definitions
│       └── index.ts      # Main Mastra config
├── .env.example          # Required environment variables
├── package.json
├── tsconfig.json
└── README.md
```