Examples
Runnable examples live in the examples/ directory. Clone the repo and run with pnpm from the monorepo root.
All examples require OPENAI_API_KEY:
export OPENAI_API_KEY=sk-...basic-node
Minimal Node.js script showing the core add / search flow with OpenAI embeddings and PGlite storage.
pnpm --filter @turbomem/example-basic-node startSource: examples/basic-node/src/index.ts
mastra-agent
Shows how to wrap TurboMemory as a Mastra memory provider via @turbomem/mastra.
pnpm --filter @turbomem/example-mastra-agent startSource: examples/mastra-agent/src/index.ts
vercel-ai-chatbot
A Next.js (App Router) chatbot that gives the model long-term memory using @turbomem/vercel-ai tools (rememberFact / recallMemories).
pnpm --filter @turbomem/example-vercel-ai-chatbot devKey files:
app/api/chat/route.ts— streams a response and wires in the memory toolslib/memory.ts— lazily-initialisedTurboMemory; PGlite locally, Upstash on Vercel viaTURBOMEM_STORAGEapp/page.tsx— minimal chat UI usinguseChat
Local dev: PGlite on disk (default). Vercel deploy: set TURBOMEM_STORAGE=upstash-vector plus Upstash env vars. See the example README.
browser-vite
A Vite SPA showing turbomem running entirely in the browser with IndexedDB-backed PGlite storage. Add facts, search, and reload — memories persist in IndexedDB.
pnpm --filter turbomem build
pnpm --filter @turbomem/example-browser-vite devYou'll need a Google AI API key for Gemini embeddings. The demo stores the key in sessionStorage for convenience only.
Source: examples/browser-vite/src/main.ts
tanstack-pinecone-starter
A TanStack Start CS tutoring app with long-term learner memory backed by Pinecone. Demonstrates the explicit indexClient pattern required for Vite SSR (see Pinecone integration patterns).
cd turbomem-tanstack-pinecone-starter
cp .env.example .env # add OPENAI_API_KEY, PINECONE_API_KEY, PINECONE_INDEX
npm install
npm run devKey files:
src/lib/pinecone.ts— static Pinecone import +PineconeStorageAdapter({ indexClient })src/lib/memory.ts— sharedTurboMemoryinstancesrc/routes/api/chat.ts— streaming tutor with memory search / addvite.config.ts—ssr.externalfor@pinecone-database/pinecone