# Overview URL: /docs/runtimes/mastra/overview TypeScript agent framework for AI applications with tools and workflows. Mastra is an open-source TypeScript agent framework designed to provide the essential primitives for building AI applications. It enables developers to create AI agents with memory and tool-calling capabilities, implement deterministic LLM workflows, and leverage RAG for knowledge integration. With features like model routing, workflow graphs, and automated evals, Mastra provides a complete toolkit for developing, testing, and deploying AI applications. Integrating with Next.js and assistant-ui \[#integrating-with-nextjs-and-assistant-ui] There are two primary ways to integrate Mastra into your Next.js project when using assistant-ui: 1. **Full-Stack Integration**: Integrate Mastra directly into your Next.js application's API routes. This approach keeps your backend and frontend code within the same project. [Learn how to set up Full-Stack Integration](./full-stack-integration) 2. **Separate Server Integration**: Run Mastra as a standalone server and connect your Next.js frontend to its API endpoints. This approach separates concerns and allows for independent scaling. [Learn how to set up Separate Server Integration](./separate-server-integration) Choose the guide that best fits your project architecture. Both methods allow seamless integration with the assistant-ui components.