Why Dartantic?
Dartantic was born out of frustration with not being able to easily use generative AI in my Dart and Flutter apps without doing things in a very different way based on the model I chose and the type of app I was building, i.e. GUI, CLI or server-side. It’s all Dart — why can’t I use all the models with a single API across all the apps? As an example of the kinds of apps that I wanted to build, consider CalPal, a Flutter app that uses Dartantic to build an agentic workflow for managing a user’s calendar. Check out this screenshot:
What is Dartantic AI?
One API, multiple provider configurations out of the box:- 6 native implementations: OpenAI, OpenAI Responses, Google (Gemini), Anthropic (Claude), Mistral, Ollama
- 5 OpenAI-compatible: OpenRouter, Together AI, Cohere, Google-OpenAI, Ollama-OpenAI
- Chat + Embeddings: OpenAI, OpenAI Responses, Google, Mistral, Cohere all support both
- Thinking metadata + server-side tools: OpenAI Responses exposes reasoning text and provider-hosted tools today
Installation
Quick Examples
Basic Chat
Streaming
Tools
Embeddings
Multi-Provider Conversations
Key Features
- Unified API: Same code for all providers
- Agent-Based: Automatic tool execution and state management
- Multi-Provider: Share conversations between providers
- Streaming: Real-time responses
- Tools: Extend with custom functions
- Typed Output: Get structured data back
- Embeddings: Vector operations with same Agent
- MCP Support: Connect to external tools
Examples
See complete working examples:Next Steps
- Quick Start Guide
- Providers - Available providers and capabilities
- Thinking Metadata - Surface provider reasoning streams
- Server-Side Tools - Built-in provider tools

