Lumen is a personalized, low-noise content experience that helps you stay informed without falling into ad-driven or engagement-bait feeds.
Lumen was born from a simple frustration: we kept opening our phones to check one thing and losing hours to content we never asked for. We all want to reduce our screen time, but the reality is there is genuinely important information we need to stay on top of.
The problem is that getting to it means scrolling through five different apps full of ads, engagement bait, and posts that have nothing to do with why we picked up the phone in the first place. We realized the issue was never willpower; it is that every platform is architecturally designed to hijack your attention, not serve it.
So we built Lumen: a fully customizable experience where you choose exactly what you consume, whether that is diving deeper into science topics, learning how financial markets work, or understanding conversations in politics, all in one place with zero noise.
No more drowning in distraction. Just a personal space built around your curiosity, your growth, and your time.
- Frontend: React + Vite
- Backend: API service (this repo currently uses a TypeScript server in
artifacts/api-server) - Vector DB: Qdrant for semantic retrieval over embedded content
- Agent framework: LangGraph
- LLM: OpenAI GPT-4o family models
- Tool calls:
- RAG retrieval from indexed Qdrant content
- Live web search via Tavily API
- Build acceleration: Codex + Replit workflows
- Personalized feed across sources (articles, podcasts, videos, RSS)
- Topic/source preferences and daily feed shaping
- In-card media consumption (read/watch/listen inline)
- Deep-dive agent chat with:
- context-aware follow-ups from selected cards
- vector retrieval + web search tool calling
- PWA support for iOS home screen install
artifacts/focusfeed-web: web frontend (React + Vite)artifacts/api-server: backend API serverlib/api-zod: shared request/response schemaslib/api-client-react: generated frontend client
- Node.js 20+
- pnpm 9+
pnpm installCreate backend env file:
artifacts/api-server/.envTypical variables:
PORT=3000
OPENAI_API_KEY=...
TAVILY_API_KEY=... # optional but recommended for web search tool
GOOGLE_SERPER_API_KEY=... # optional alternative to Tavily
QDRANT_PATH=/Users/madhavkannathenappan/testing/lumen/data/qdrantpnpm run dev:apiIn a second terminal:
pnpm run dev:webOpen:
- Web app:
http://localhost:5173/focusfeed-web/ - API:
http://localhost:3000
- Feed and chat schemas are shared via
lib/api-zod. - PWA install on iOS works best when served over HTTPS and launched from Home Screen.