Project Info
This project did not submit a demo video on Devpost.
Inspiration
In today's fast-paced environment, video calls often lead to important discussions and decisions. However, for hosts, generating new ideas to engage the audience can be challenging at times, and taking notes during a presentation can be inconvenient. Manual summarization often misses critical details.
What it does
MeetAI is an AI-powered video call platform that provides real-time feedback leveraging advanced technologies such as Fetch.AI's AI agents, Google's Gemini AI, SingleStore's vector databases, and Agora's real-time voice and video capabilities to transform how meetings are documented and actioned. MeetAI generates a concise summary of the key points discussed, and a detailed list of notes, including key decisions made, action items with assigned responsibilities, important deadlines, and any unresolved issues or next steps all while the video call is going on. This feedback-driven cycle allows the host to make assisted decisions on how to continue to go on with the meeting.
How we built it
The front end of MeetAI is built using TypeScript and Tailwind.css to create a clean and minimalistic user interface. The backend is implemented using Python FastAPI to handle our API endpoints and SingleStoreDB for our vector database, allowing fast and accurate retrieval of information from large datasets. The Agora API is used to support our video streaming platform, which makes real-time communication easy. We also utilized the OpenAI API to generate text embeddings on our vector database and Fetch.AI agents simplify the process of generating notes and vector search. Frontend: TypeScript, TailwindCSS Backend: SingleStoreDB, Python, FastAPI APIs: Gemini, Agora, OpenAI, Fetch.AI
Accomplishments we're proud of
We are happy to see that we have a beautiful landing page, providing a clean and smooth user experience. Combining so many new technologies in a short time was no easy feat, including the process of going through documentation and resources for vector databases.
What we learned
We learned about implementing AI agents, building a vector database with vector search, and transcribing from speech to text.
What's next
Support all channels for anyone to join.
MeetAI
In today's fast-paced environment, video calls often lead to important discussions and decisions. However, for hosts, generating new ideas to engage the audience can be challenging at times, and taking notes during a presentation can be inconvenient. Manual summarization often misses critical details.
MeetAI is an AI powered video call platform that provides real-time feedback leveraging advanced technologies such as Fetch.AI's AI agents, Google's Gemini AI, SingleStore's vector databases, and Agora's real time voice and video capabilities to transform how meetings are documented and actioned.
MeetAI generates a concise summary of the key points discussed, a detailed list of notes, including key decisions made, action items with assigned responsibilities, important deadlines, and any unresolved issues or next steps all while the video call is going on. This feedback-driven cycle allows the host to make assisted decisions on how to continue to go on with the meeting.
Analysis
View
Metric
- 12
- 9
- 1
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- FastAPIIn code
- HTMLIn code
- JavaScriptIn code
- OpenAIIn code
- PythonIn code
- ReactIn code
- Tailwind CSSIn code
- TypeScriptIn code
- Google GeminiClaimed
9 of 10 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
34 KB
Source files
25
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
jask1m/calhacks11
35 files · 415 KB · @ fc8d80b
Structure
Interface
7 files · 20%Screens, components and styles rendered to the user.
API & routing
5 files · 14%Request entry points: routes, handlers and controllers.
Application logic
9 files · 26%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript46%
- Python27%
- TypeScript16%
- CSS5%
- Markdown5%
- HTML1%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
frontend/package.json
npm · 25- @clerk/clerk-react
- @radix-ui/react-icons
- @radix-ui/react-navigation-menu
- agora-rtc-react
- agora-rtc-sdk-ng
- class-variance-authority
- clsx
- lucide-react
- react
- react-dom
- react-router-dom
- tailwind-merge
- tailwindcss-animate
- +12 more
backend/requirements.txt
pypi · 11- fastapi
- fastapi-cors
- google-generativeai
- openai
- pydantic
- python-dotenv
- requests
- singlestoredb
- tiktoken
- uagents
- uvicorn
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
Feature verification
Agora real-time video/voice callingVerified
Agora's real-time voice and video capabilities power the video call platform
Claimed on readmehigh confidencefrontend/src/components/Basics.jsx:1— Uses agora-rtc-react hooks (useJoin, useLocalCameraTrack, useLocalMicrophoneTrack, usePublish, useRemoteUsers) and renders LocalUser/RemoteUser video tiles, a functioning join-channel UIfrontend/package.json:16— agora-rtc-react and agora-rtc-sdk-ng are real dependenciesfrontend/src/routes/Dashboard.jsx:46— Basics (the Agora call component) is wired into the Dashboard page
FastAPI backend for API endpointsVerified
The backend is implemented using Python FastAPI to handle our API endpoints
Claimed on readmehigh confidencebackend/server.py:33— FastAPI app is created with CORS middleware and endpoints /query-agent and /create-user
Fetch.AI agents for notes generation and vector searchCode-supported
Fetch.AI agents simplify the process of generating notes and vector search
Claimed on readmemedium confidencebackend/meeting_agents.py:27— Defines notes_agent and vector_search_agent using uagents.Agent with on_query handlers for notes generation and vector search, and a Bureau to run thembackend/vectorDB.py:79— use_vector_search_agent queries vector_search_agent, showing intended agent orchestration, but this function is only invoked from create_and_insert_embeddings, which is not called by any API route or frontend code
Gemini AI note/summary generationCode-supported
Google's Gemini AI generates a concise summary and detailed notes (decisions, action items, deadlines, next steps)
Claimed on readmemedium confidencebackend/meeting_agents.py:108— Configures genai and calls gemini-1.5-pro-latest with a prompt requesting summary, decisions, action items, deadlines, and next steps, matching the claim text closelybackend/meeting_agents.py:80— handle_notes is only triggered by an on_query handler on notes_agent; no code in server.py or the frontend ever calls this agent, so it is not reachable end-to-end
OpenAI text embeddings generationCode-supported
We also utilized the OpenAI API to generate text embeddings on our vector database
Claimed on readmemedium confidencebackend/vectorDB.py:29— Calls OpenAI client.embeddings.create with model text-embedding-ada-002 to generate embeddings and stores them, but this code path is never invoked from any reachable API endpoint (only from __main__ or unused helper functions)
SingleStore vector database for retrievalCode-supported
SingleStoreDB vector database allows fast and accurate retrieval of information from large datasets
Claimed on readmemedium confidencebackend/vectorDB.py:39— Inserts OpenAI text embeddings into a SingleStore myvectortable via singlestoredb connectionbackend/meeting_agents.py:60— vector_search agent runs a SingleStore dot-product similarity query (v <*> @qv) with an HNSW_PQ vector index, implementing vector searchbackend/server.py:49— The only exposed API endpoint that could trigger this path, /query-agent, calls an undefined function agent_query (never imported or defined anywhere in the file), so the vector search path is not reachable through the running server
TypeScript/TailwindCSS frontend with clean minimal UICode-supported
The front end of MeetAI is built using TypeScript and Tailwind.css to create a clean and minimalistic user interface
Claimed on readmemedium confidencefrontend/tailwind.config.js— TailwindCSS is configured and used throughout components (e.g. Basics.jsx uses Tailwind utility classes)frontend/tsconfig.json— TypeScript config exists, but most source files are .jsx, not .tsx (only frontend/src/components/ui/navigation-menu.tsx and frontend/src/lib/utils.ts use TypeScript), so the app is only partially TypeScript
User account creation / sign-up-sign-inCode-supported
Implied by Sign-in/Sign-up routes and Clerk dependency for a platform with hosts
Claimed on Devpostlow confidencefrontend/src/routes/Sign-in.jsx— Dedicated sign-in route file existsfrontend/src/routes/Sign-up.jsx— Dedicated sign-up route file exists, and @clerk/clerk-react is a listed dependency, but full auth wiring was not traced end-to-endbackend/server.py:57— A separate /create-user endpoint inserts directly into a SingleStore users table, unrelated to Clerk, suggesting inconsistent/duplicated user creation logic
Real-time feedback and notes during the call (host decision assistance)Claimed only
MeetAI generates a concise summary and detailed notes all while the video call is going on, enabling a feedback-driven cycle for the host
Claimed on readmehigh confidenceView Reports / notes viewing UIClaimed only
Implied by 'detailed list of notes' surfaced to the host during the meeting
Claimed on Devposthigh confidencefrontend/src/routes/Dashboard.jsx:48— The 'View Reports' tab only renders a static placeholder heading 'Here are the reports.' with no data fetching or connection to backend notes
An AI agent derived these features from the project’s Devpost page and readme, then searched the code for each one. Verified features are backed by cited code; claimed-only features had no supporting code, which is not by itself proof a feature is missing.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.