← All projects

Projects

Mimi

Funding research with the organization’s context built in.

I designed and built Mimi for Ocean Agentics to connect funding opportunities with people, organizations, and projects. It grew from a spreadsheet of leads into a shared CRM for deciding what to pursue, preparing applications, and retaining the research and relationship context behind each lead.

My contribution: product design and development as Head of Product, including the information model and AI-assisted research workflows.

A funding pipeline, shaped around the team

I brought a network of ocean scientists, funding leads, and United Nations contacts into one system, keeping deadlines, potential funding, relationships, and pitch ideas together.

Mimi helps Ocean Agentics’ small team weigh what a lead could support, who is involved, and the effort required to apply. Funding and relationship research share one workspace.

Mimi opportunities list showing organizations, funding amounts, opportunity types, and pipeline status
The opportunities list keeps organizations, funding amounts, opportunity types, and pipeline status together.

Three records, with room for the research

People, organizations, and opportunities form the core records. Lists support comparison; document-style detail views hold the research.

  • People: Roles, work, touchpoints, relationship status, and next steps.
  • Organizations: Mission, stated and observed priorities, relationships, funded projects, and people.
  • Opportunities: Amounts, organizations, timelines, criteria, pitches, application documents, and sources.

Search, filters, and list or split views let team members inspect supporting research while keeping the pipeline in view.

Keeping uncertainty visible

Mimi distinguishes exact dates, date windows, rolling opportunities, and unknown dates. Explicit verification keeps uncertain deadlines visible. An unverified deadline remains distinct from a confirmed date.

Amounts retain ranges, currencies, and funding frequency. Dashboard summaries group comparable values and show unknown bounds; timelines group events by opportunity.

Mimi opportunities list displaying funding amounts, timeline events, and application status
A wider opportunities view places timeline information beside funding amounts and application status.

Research through an Ocean Agentics lens

I wanted research to explain where another organization’s work overlapped with ours, what we could do together, and which opportunities matched our capabilities. Grounding research in the team’s work helps connect a funder’s priorities with what Ocean Agentics can offer.

Two research skills supported the first implementation. One assembled an Ocean Agentics reference pack from email, Drive, Calendar, and Slack. The other used that context to investigate people, organizations, and funding opportunities, retaining sources with each dossier.

An MCP interface connected Claude and Codex to the records. This shared research supported drafting a collaborative BBNJ clearing-house proposal across sessions.

How the application evolved

The first version used Astro, SQLite, and shared Zod schemas across API, repository, and service layers. MCP tools exposed records to agents; Voyage explored conversational research.

The browser application uses React, TypeScript, React Router, Vite, and Flowbite on Firebase Hosting. Supabase supplies Google Workspace sign-in and PostgreSQL storage. Document bodies use JSONB, and shared Zod schemas validate records.

Current Mimi architecture: Firebase serves the React browser application; Supabase handles Google Workspace sign-in and protected PostgreSQL reads
Firebase serves the web application; the browser authenticates and reads protected records through Supabase.

Authentication and row-level security restrict records to eligible team members.

All projects · About me · Discuss a project