Compare frameworks
Letta vs Mastra vs LangGraph
Every figure below carries the source that reported it and the moment it was observed. Values that failed validation are withheld rather than shown, and a dash means no source we track carries that field for that framework.
| Field | Letta | Mastra | LangGraph |
|---|---|---|---|
| Stars | 24,923Synced from sourceCurrent4h ago | 28,378Synced from sourceCurrent4h ago | 42,384 (highest of the compared values)Synced from sourceCurrent4h ago |
| downloads | — | 1,980,114Synced from sourceCurrent4h ago | 3,773,725 (highest of the compared values)Synced from sourceCurrent4h ago |
| Last commit | 2026-09-10Synced from sourceCurrent4h ago | 2026-09-28Synced from sourceCurrent4h ago | 2026-09-27Synced from sourceCurrent4h ago |
| Language | pythonSeeded, unreviewedwritten 1mo ago | typescriptSeeded, unreviewedwritten 1mo ago | pythonSeeded, unreviewedwritten 1mo ago |
| Licence | Apache-2.0Synced from sourceCurrent4h ago | — | MITSynced from sourceCurrent4h ago |
| Archived | noSynced from sourceCurrent4h ago | noSynced from sourceCurrent4h ago | noSynced from sourceCurrent4h ago |
| Category | memorySeeded, unreviewedwritten 1mo ago | orchestrationSeeded, unreviewedwritten 1mo ago | orchestrationSeeded, unreviewedwritten 1mo ago |
| Contributors | 155Synced from sourceCurrent4h ago | 682Synced from sourceCurrent4h ago | 287Synced from sourceCurrent4h ago |
| Forks | 2631Synced from sourceCurrent4h ago | 2871Synced from sourceCurrent4h ago | 7174Synced from sourceCurrent4h ago |
| Maintainer | LettaSeeded, unreviewedwritten 1mo ago | MastraSeeded, unreviewedwritten 1mo ago | LangChainSeeded, unreviewedwritten 1mo ago |
| npm downloads, monthly | — | 5868462Synced from sourceCurrent4h ago | 12375862Synced from sourceCurrent4h ago |
| npm downloads, weekly | — | 1980114Synced from sourceCurrent4h ago | 3773725Synced from sourceCurrent4h ago |
| npm package | — | @mastra/coreSynced from sourceCurrent4h ago | @langchain/langgraphSynced from sourceCurrent4h ago |
| npm window ends | — | 2026-09-26Synced from sourceCurrent4h ago | 2026-09-26Synced from sourceCurrent4h ago |
| Open issues | 0Synced from sourceCurrent4h ago | 477Synced from sourceCurrent4h ago | 831Synced from sourceCurrent4h ago |
| PyPI package | lettaSynced from sourceCurrent4h ago | — | langgraphSynced from sourceCurrent4h ago |
| PyPI released | 2026-09-28T04:32:31.896015ZSynced from sourceCurrent4h ago | — | 2026-09-21T14:43:28.196799ZSynced from sourceCurrent4h ago |
| Requires Python | >=3.9Synced from sourceCurrent4h ago | — | >=3.10Synced from sourceCurrent4h ago |
| PyPI version | 0.33.5Synced from sourceCurrent4h ago | — | 1.2.12Synced from sourceCurrent4h ago |
| Repository | https://github.com/letta-ai/lettaSynced from sourceCurrent4h ago | https://github.com/mastra-ai/mastraSynced from sourceCurrent4h ago | https://github.com/langchain-ai/langgraphSynced from sourceCurrent4h ago |
Sources: GitHub REST API, npm registry downloads, PyPI registry metadata, pypistats.org downloads. Most recent observation 4h ago. Where a row is marked, ▲ is the highest of the values shown and ▼ the lowest — arithmetic on the figures above, not a ranking or a recommendation. Rows where neither extreme is meaningful are left unmarked rather than given a direction they do not have.
Change the comparison
Remove one, or open the directory to pick a different set. Up to 3 at a time.