@mastra/core
Version:
142 lines (95 loc) • 3.06 kB
Markdown
> 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
```