Skip to content
John Morgan Nemelka

Kivu

Email, calendars, tasks, and searchable memory connected across web and iOS.

Focus
AI personal assistant
Technology
TypeScript · Next.js · Supabase · pgvector · MCP · SwiftUI

Search beyond vector similarity

The knowledge pipeline combines vector and lexical search with tags and graph relationships. Enrichment creates summaries and embeddings, while source links let retrieved context lead back to its original document.

Shared domain services

Email and calendar services normalize provider-specific data behind shared APIs. Web interfaces, mobile clients, and AI tools use those services rather than implementing separate provider logic.

User context at the boundary

Authenticated routes bind data access to the user’s Supabase session. Row-level security and bearer-token support provide a common authorization foundation for browser, mobile, and agent clients.

Tools alongside conversation

The Vercel AI SDK streams assistant responses, while domain tools and MCP expose application capabilities through structured calls. Persistent knowledge and user facts supply context across conversations.

My contribution

  • Built a personal assistant with a Next.js web application, shared APIs, and a native iOS client.
  • Connected domain-specific AI tools to email, calendars, tasks, and personal knowledge.
  • Implemented document enrichment and retrieval using summaries, embeddings, tags, and graph relationships.

Results

  • A shared assistant platform spanning chat, dedicated domain interfaces, and a native iOS client.
  • Implemented a persistent knowledge pipeline connecting personal documents to source-linked retrieval.