# MeetVault Self-hosted meeting recording and intelligence platform. The user machine handles local transcription; the backend API manages auth, metadata, uploads, summarization jobs, tasks, and reminders. Large media files are stored in SeaweedFS via its S3-compatible API. ## Architecture ```text User machine: - Record audio/video - Local Whisper STT → transcript - Upload to SeaweedFS (presigned URLs) - Send transcript to backend Backend API: - Auth, users, subscriptions - Meeting metadata - Transcript ingestion - Summarization jobs - Task extraction - Reminder scheduling - PostgreSQL for structured data ``` ## Quick start ### Backend 1. Start PostgreSQL and run the schema SQL from `Overview/README.md` (includes `pgcrypto` extension, all tables, indexes, triggers). 2. Run the backend API server. 3. Spin up SeaweedFS and configure presigned URL endpoints on the backend. ### Desktop client Run the Tauri + React demo in `Wireframes/Desktop/MeetVault-Desktop-Demo/`. It supports local Whisper transcription, speaker diarization via diart, live overlay window, recording capture, and mock speech-engine mode for UI testing without ML models. ## Stack (MVP) Frontend: React / Next.js Backend: FastAPI or Node.js Database: PostgreSQL + `processing_jobs` table as job queue Media storage: SeaweedFS Local STT: Whisper / whisper.cpp No Kafka, Elasticsearch, Kubernetes, vector DBs, or Redis are needed for the MVP.