Inspiration

Canada's workforce is vast, distributed, and diverse, stretching across six time zones, with thousands of small and medium-sized businesses trying to compete without the resources of large enterprises. We noticed that Canadian teams, especially remote and hybrid ones, constantly struggle with the same problem: knowledge gets lost.

A decision made in a Monday standup disappears by Friday. A new hire spends weeks re-learning context that already exists somewhere in a Slack thread or a Google Doc nobody can find. A manager tries to staff a project but has no real visibility into who on their team has the right skills.

These aren't just inefficiencies. In a country where talent is scarce and retaining good people matters, losing institutional knowledge is a real cost.

We built EchoBase to give Canadian teams, such as startups in Waterloo to agencies in Montreal, the kind of organizational intelligence that used to only exist in the minds of senior employees. A system that remembers, reasons, and helps your team move faster without losing what they've already built.

What it does

EchoBase is an AI-powered workplace intelligence platform that acts as your organization's persistent memory. It lets teams ingest knowledge from Google Drive documents, GitHub repositories, and personal notes into a semantic memory layer that anyone can query in plain English. Employees can join voice-powered AI meetings where the assistant already knows your team's context, past decisions, and ongoing projects. Managers can use the AI ranking engine to automatically match employees to projects based on skills and experience. EchoBase also integrates with Notion to auto-generate project workspaces, sends smart notifications, and maintains a full org-wide knowledge base — all in one platform.

How we built it

We built EchoBase to work with Backboard as the interface layer for organizational knowledge and project planning, while Supabase acts as the memory backbone underneath it. The backend handles ingestion, search, question answering, users, and project workflows, so Backboard can surface both knowledge retrieval and staffing decisions in one place.

The most important part of the system is the memory layer in Supabase. When we ingest a source, we first store the original document and its metadata in source_documents so we preserve the raw evidence. We then split the text into overlapping 1200 character chunks with 200 characters of overlap, generate embeddings for each chunk, and store them in document_chunks for precise retrieval.

After that, each chunk is passed through Gemini to extract structured memory objects rather than just storing raw text. Those memories include fields like memory_type, content, weight, confidence, salience, recency_score, source_span, metadata, and relevant_users, and they are embedded and stored separately in memory_items. That gives us three layers inside Supabase: original source records, chunk level semantic retrieval, and higher level typed memories.

Supabase also gives us identity aware memory routing. During ingestion, we pull known users from the profiles table and use that list to attach memories to the right people instead of keeping everything in one flat index. That is what makes Backboard feel less like a document search tool and more like a real organizational memory system tied to actual employees and projects.

Challenges we ran into

  • Memory coherence: Getting the AI to correctly retrieve and reference past meeting context mid-conversation without hallucinating was tricky to tune.
  • Voice latency: Chaining speech-to-text → LLM reasoning → text-to-speech in real time introduced noticeable delays that required careful pipeline optimization.
  • Multi-source ingestion: Normalizing content from Google Docs, PDFs, code diffs, and plaintext into a consistent memory format took significant effort.
  • Supabase schema design: Modeling employees, skills, projects, meetings, and notifications in a relational schema that supported both the ranking engine and the AI queries required several iterations.
  • Google OAuth token flow: Handling token refresh and scoped Drive access securely across users was more complex than anticipated.

Accomplishments that we're proud of

A fully functional voice meeting assistant that knows your team's history and can answer questions mid-call. An AI employee ranking engine that reads real skill data and outputs explainable match scores with reasoning. A live document ingestion pipeline that can process entire Google Drive folders or GitHub repos into searchable memory in seconds. Auto-generating a structured Notion workspace the moment a new project is created. Shipping a polished, full-stack product with auth, a dashboard, calendar, inbox, project management, and AI — end to end — in a hackathon timeframe.

What we learned

Semantic memory is only as good as your ingestion pipeline — garbage in, garbage out. Chunking and tagging strategy matters enormously. Voice AI UX is hard. Users expect near-instant responses, and every extra 200ms of latency feels jarring in conversation. Composing multiple AI APIs (Gemini, ElevenLabs, Backboard) into a single coherent product requires strict contract design between services. Supabase is remarkably productive for hackathons — auth, database, and real-time out of the box saved us hours. Building for a specific user (a Canadian SMB team lead) kept us focused and prevented scope creep.

What's next for EchoBase

  • Real-time meeting transcription streamed live during calls, not just post-meeting.
  • Slack and Teams integration so EchoBase can passively learn from existing communication channels.
  • AI-generated onboarding paths — when a new hire joins, EchoBase automatically builds a custom knowledge ramp based on their role.
  • Compliance and privacy controls tailored for Canadian data residency requirements (PIPEDA alignment).
  • Mobile app for on-the-go voice queries and notifications.
  • Analytics dashboard giving leadership visibility into team knowledge gaps, project health, and skill distribution across the org.

Built With

Share this project:

Updates