All projects

Noema

Noema is a multi-tenant SaaS that turns a team's scattered information into something you can ask. You upload documents or record a meeting, then query it in plain language or ask it to act, such as creating a task or updating a record.

Year
2026
Stack
Angular 21, Supabase, pgvector, Deno, Gemini API
Cover of Noema
596commits
89SQL migrations
19edge functions
2000+tests

How it works

It is an Angular 21 web app on Supabase. Every organization shares one Postgres database, but each one only sees its own data: the session token carries the organization and the role, and RLS policies filter every query with them. New accounts stay out until an administrator approves them.

When you upload a document, a Deno function extracts the text. If it is a scanned PDF or an image, Gemini reads it. Then the text is split into chunks, each chunk gets a 768-dimension embedding, and everything is stored in pgvector. Meetings follow the same path: they are transcribed with speakers apart, summarized, and their action items become tasks.

When you ask something, the chat looks for the closest chunks across documents, meetings, entities and memory. A light model classifies the intent and picks which model answers. If the question asks for an action, the model calls tools that search or create tasks and records, with at most three rounds per message, and the answer streams in.

Every AI call counts tokens, is charged against the plan quota before going on, and is logged as cost per session and per organization. Plans are billed with Stripe.

Right now the backend is moving from many separate functions to a single API with typed contracts per use case, one module at a time and without stopping production. Tasks already work that way.

Next projectRetama client area