crowd-source-faq

Crowd Source FAQ (Yaksha FAQ Portal)

Full-stack FAQ portal with semantic vector search, AI-powered community moderation, and an expert promotion layer. Built to handle 1 million registered users.

GitHub: https://github.com/vicharanashala/crowd-source-faq Full reference: docs/ · Contributing · Code of Conduct · License


Vision

Automate the FAQ lifecycle end-to-end. Zero people in the loop. Reduce the operational FAQ culture.

Every question a user has has been asked before — and most will be asked again. The right answer should be there before the user finishes typing. The platform achieves this through four zero-touch pillars:

The platform is the operator. People handle exceptions, not the steady state.


About

Samagama (internally “Yaksha FAQ Portal”) turns an organisation’s accumulated conversations into a searchable, self-maintaining FAQ. It combines hybrid vector + keyword search with a community Q&A board and a fully automated ingestion pipeline that pulls transcripts from Zoom, extracts Q&A with AI, and indexes them for retrieval in seconds.

Built for organisations whose community generates more questions than a human team can answer — student cohorts, open-source projects, internal forums, customer-success communities. Target scale: 1 million registered users with constant conversational input.

See docs/ARCHITECTURE.md for the architecture deep-dive and docs/PIPELINES.md for pipeline internals.


Tech Stack

Layer Technologies
Frontend React 18, Vite, TypeScript, Tailwind CSS, Framer Motion, Axios, Recharts, React Router 6, Vitest
Backend Node.js, Express 4, TypeScript (ESM), Mongoose 8, JWT, bcryptjs, Helmet, CORS, Morgan, Multer, Zod, express-rate-limit, dotenv, OpenAI SDK, Vitest
Database & Storage MongoDB Atlas (with Vector Search), Upstash Redis (optional), LRU cache, Cloudinary
Search & AI Xenova/transformers (768-dim local embeddings), Atlas Vector Search, $text search, Reciprocal Rank Fusion
AI Providers Anthropic, OpenAI, XAI, MiniMax (per-pipeline configurable)
DevOps Sentry, Ngrok (local webhook tunnel), Twilio (SMS), SMTP, Vitest

Quick Start

./run.sh        # Full-stack runner: env setup, ngrok, backend + frontend

run.sh prompts for MONGODB_URI and JWT_SECRET on first run, then saves them to apps/backend/.env.local. The script will not overwrite existing values. Session logs are written to logs/session_*.txt.


Key Features

Eight flagship capabilities define this platform:

Other capabilities: semantic hybrid search, community Q&A board, reputation system + badges + leaderboard, SpillTheTea event-driven notifications, per-user Zoom OAuth, RAG-powered /ask-ai assistant with image + file attachments, soft user lifecycle, experimental feature flags, support tickets (troubleshoot → admin triage → resolution).


Admin Dashboard

The admin panel at /admin (mounted at /api/admin/*) provides telemetry, moderation, and operational control. Key areas:

For the full admin route map and per-page behaviour, see docs/ARCHITECTURE.md.


User Experience

The user-facing app (/, /faq, /community, /saved, /account, /leaderboard) gives authenticated users full participation in the knowledge loop:

For per-route behaviour and field schemas, see docs/ARCHITECTURE.md.


Project Structure

Crowd Source FAQ/
├── apps/
│   ├── backend/       # Express + TypeScript API
│   └── frontend/      # React + Vite SPA
├── docs/              # Full documentation      
└── run.sh             # Local dev runner (env setup, ngrok, backend + frontend)

Environment Variables

Required: MONGODB_URI, JWT_SECRET Optional: at least one AI provider key (ANTHROPIC_API_KEY / OPENAI_API_KEY / XAI_API_KEY / MINIMAX_API_KEY), Zoom OAuth credentials, CLOUDINARY_*, SENTRY_DSN, Twilio + SMTP for notifications, UPSTASH_REDIS_*

See docs/ARCHITECTURE.md#10-env-variables-reference for the full list.


License

MIT © 2026 vicharanashala