A hyper-fast, private, and AI-powered intelligence feed for your digital life.
Created by hariharen9
Track anything. Summary everything. Own your data. Venn is a self-hosted command center designed to transform scattered information into actionable intelligence.
- Multi-Source Tracking — Add topics (movies, news, people), packages (PyPI, npm), RSS feeds, subreddits, and Reddit users
- AI-Powered Intelligence — Automatic summarization using LLMs with Indian context (INR, lakhs/crores)
- Dual AI Providers — Auto-detects and uses Ollama when available, falls back to OpenRouter
- Reddit Users Support — Track both subreddits and individual Reddit users (u/username)
- Native PWA Feel — Mobile-optimized with bottom-sheet modals, safe-area support, and fixed navigation
- Local-First / Private — Support for local LLMs via Ollama for complete privacy
- Universal Search — Instant semantic global search (Omnibar) across all tracked entities
- Aesthetic First — Terminal-inspired, high-breathability dark interface with accent colors
- PIN-Locked — Lightweight security to keep your dashboard eyes-only
- Package Monitoring — Track npm/PyPI packages with version alerts
- RSS Feeds — Full RSS/Atom feed aggregator
- Cache System — Smart caching to reduce API calls
| Layer | Technology |
|---|---|
| Framework | Next.js 14 (App + Pages) |
| Styling | Tailwind CSS + Vanilla CSS |
| AI Processing | OpenRouter (Gemma 4) or local Ollama |
| Search Engine | Tavily AI |
| Persistence | Netlify Blobs (Global Sync) + LocalStorage |
| Auth | Custom PIN-based Middleware |
| Reddit API | Reddit Official API with OAuth |
Venn is designed to be self-hosted. You run it, you own the keys.
git clone https://github.com/hariharen9/venn.git
cd venn
npm installCopy .env.example to .env.local and provide your keys:
cp .env.example .env.localEdit .env.local with your API keys:
| Variable | Description | Required |
|---|---|---|
TAVILY_API_KEY |
Tavily Search API Key | Yes |
OPENROUTER_API_KEY |
OpenRouter API Key | No (optional fallback when Ollama unavailable) |
APP_PIN |
Your chosen 6+ digit access code | Yes |
REDDIT_CLIENT_ID |
Reddit App Client ID | For Reddit |
REDDIT_CLIENT_SECRET |
Reddit App Secret | For Reddit |
REDDIT_USERNAME |
Reddit username | For Reddit |
REDDIT_PASSWORD |
Reddit password | For Reddit |
- Go to https://www.reddit.com/prefs/apps
- Click "create another app..."
- Select script
- Name: "Venn"
- Redirect URI: http://localhost:1313
- Note the
client_id(below app name) - Note the
client_secret
# Install Ollama
curl -fsSL https://ollama.com/install.sh | sh
# Pull a model (gemma3, llama3, mistral, etc.)
ollama pull gemma3:12b# Using Netlify CLI to support Blobs and Functions
npx netlify devThen open http://localhost:1313
# Deploy to Netlify
npx netlify deploy --prod --dir=.nextOr connect your GitHub repo to Netlify for automatic deploys.
Click + TOPIC and enter any topic (movie name, person, event, etc.) Topics are synced via Tavily search and AI-summarized.
- Subreddits: Enter
r/programming— shows Hot/New/Top/Rising posts - Reddit Users: Enter
u/spez— shows Overview/Posts/Comments
Track npm or PyPI packages. Venn fetches version history and checks for updates.
Add any RSS/Atom feed URL. Venn parses and displays entries.
| Option | Description |
|---|---|
| AI Mode | Auto (Ollama first, fallback), Ollama only, or OpenRouter |
| Ollama URL | Default http://localhost:11434 |
| Reddit Post Count | Posts to fetch per source (default: 15) |
| Cache TTL | How long to cache data (default: 4 hours) |
Venn is a first-class PWA:
- iOS: "Add to Home Screen" for full-screen experience
- Android: Installable directly from browser
- Features: Bottom-sheet drawers, tabbed navigation, swipe gestures
- No Database: Venn operates on LocalStorage + Netlify Blobs
- Local AI: Switch to Ollama in Settings for complete privacy
- Sync: Cloud sync ensures data across devices
- Your Keys: API keys stay on your deployment
- Ensure Ollama is running:
ollama serve - Check URL in Settings (default: http://localhost:11434)
- Try accessing http://localhost:11434/api/tags in browser
- Verify client_id and client_secret in .env.local
- Ensure Reddit app redirect URI matches exactly
- Run
npm run buildlocally to check for errors - Ensure all env variables are set
MIT — Created by hariharen9. Note: This is a personal tool. It is provided "as is". Use your own API keys for third-party services.