- You can push back on ideas-this can lead to better documentation. Cite sources and explain your reasoning when you do so
- ALWAYS ask for clarification rather than making assumptions
- NEVER lie, guess, or make up information
Meteora builds liquidity pools and DeFi infrastructure on Solana. This documentation serves:
- Developers integrating Meteora's products
- Projects launching tokens using Meteora's pools
- Users understanding Meteora's products
- Partners building on top of Meteora's infrastructure
Core products documented:
- DLMM (Dynamic Liquidity Market Maker): Concentrated liquidity with bin-based architecture, dynamic fees, zero-slippage bins
- DAMM v1 & v2 (Dynamic AMM): Constant product AMMs with different feature sets
- DBC (Dynamic Bonding Curve): Customizable virtual curves for token launches
- Dynamic Vault: Yield optimization infrastructure that rebalances across lending platforms
- Alpha Vault: Anti-sniper mechanism for token launches
- Anti-Sniper Suite (A.S.S.): Fee scheduler, rate limiter, and other anti-bot tools
- Format: MDX files with YAML frontmatter
- Config: docs.json for navigation, theme, settings
- Components: Mintlify components (Card, CardGroup, Steps, Note, Warning, Info, etc.)
- Organization:
/overview- Product overviews and concepts/developer-guide- Integration guides and technical docs/anti-sniper-suite- Anti-bot toolkit documentation/legal- Terms of service/resources- Community tools and dashboards
- Document just enough for user success - not too much, not too little
- Prioritize accuracy and usability of information
- Make content evergreen when possible
- Search for existing information before adding new content. Avoid duplication unless it is done for a strategic reason
- Check existing patterns for consistency
- Start by making the smallest reasonable changes
Use these terms consistently:
- "Launch Pool" not "launch pool" when referring to the product
- "Dynamic AMM" or "DAMM" not "dynamic amm"
- "DLMM" not "dlmm" or "Dlmm"
- "Alpha Vault" not "alpha vault"
- "Anti-Sniper Suite" or "A.S.S." for the toolkit
- "liquidity provider" or "LP" for users providing liquidity
- "position" for LP holdings in pools
- "bin" for DLMM price ranges
- "permissionless" not "permission-less"
TypeScript SDK initialization pattern:
import { Connection } from "@solana/web3.js";
import { ClientName } from "@meteora-ag/sdk-name";
const connection = new Connection("https://api.mainnet-beta.solana.com");
const client = new ClientName(connection);Always use mainnet program IDs in examples unless specifically for devnet:
- DLMM:
LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo - DAMM v1:
Eo7WjKq67rjJQSZxS6z3YkapzY3eMj6Xy8X5EQVn5UaB - DAMM v2:
cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG - DBC:
dbcij3LWUppWqq96dh6gJWwBifmcGfLSB5D4DuSMaqN - Dynamic Vault:
24Uqj9JCLxUeoC3hGfh5W3s9FM9uCHDS2SG3LYwBpyTi - Alpha Vault:
vaU6kP7iNEGkbmPkLmZfGwiGxd4Mob24QQCie5R9kd2
Standard API patterns:
- DLMM API:
https://dlmm.datapi.meteora.ag - DAMM v2 API:
https://damm-v2.datapi.meteora.ag/
- title: Clear, descriptive page title
- description: Concise summary for SEO/navigation
- Additional fields as needed (icon, iconType for cards)
- Second-person voice ("you")
- Professional but accessible
- Action-oriented for guides
- Explain "why" not just "how"
For integration guides:
- Introduction with product context
- Prerequisites/dependencies
- Installation steps
- Code examples with explanations
- Common configurations
- Troubleshooting/notes
For concept pages:
- What is [product]?
- Key features
- How it works
- Use cases
- Related resources
- Language tags on all code blocks
- Include imports in examples
- Show both TypeScript and Rust where applicable
- Comment complex operations
- Use realistic values in examples
- Alt text on all images
- Diagrams for complex flows
- Screenshots for UI references
- CardGroups for related links
- Relative paths for internal links
- Full URLs for external resources
- Link to GitHub repos for SDKs
- Reference API docs where relevant
npm install @meteora-ag/[sdk-name] @solana/web3.js
# or
pnpm install @meteora-ag/[sdk-name] @solana/web3.js
# or
yarn add @meteora-ag/[sdk-name] @solana/web3.js<CardGroup cols={2}>
<Card title="Feature Name" icon="icon-name" iconType="solid">
Brief description of the feature and its benefits.
</Card>
</CardGroup><Steps>
<Step title="Action verb + description">
Detailed explanation of this step.
</Step>
</Steps><Note>For general important information</Note>
<Warning>For potential issues or gotchas</Warning>
<Info>For supplementary information</Info>- NEVER use --no-verify when committing
- Ask how to handle uncommitted changes before starting
- Create a new branch when no clear branch exists for changes
- Commit frequently throughout development
- NEVER skip or disable pre-commit hooks
- Skip frontmatter on any MDX file
- Use absolute URLs for internal links
- Include untested code examples
- Make assumptions - always ask for clarification
- Create duplicate content without strategic reason
- Use inconsistent terminology
- Mix mainnet and devnet examples without clear labels
- Omit error handling in code examples
- Create overly technical content without context
- Use marketing language in technical documentation