A sophisticated Reddit feedback analysis tool with AI-powered insights, featuring a modern dark glassmorphism UI with liquid design elements.
- Reddit Scraping: Automated data collection from subreddits with resumable scraping
- RAG System: Advanced semantic search with persistent embeddings
- AI Chat Interface: Real-time streaming responses powered by GPT-3.5
- Smart Indexing: Incremental embedding updates for new data
- Dark Glassmorphism Design: Modern glass effects with backdrop blur
- Liquid Animations: Smooth, organic animations throughout
- Real-time Streaming: Live AI responses with typing indicators
- Responsive Layout: Fully adaptive design for all screen sizes
- Python 3.8+
- Node.js 18+
- Reddit API credentials
- OpenAI API key
- Navigate to backend directory:
cd backend- Install dependencies:
pip install -r requirements.txt- Create
.envfile:
REDDIT_CLIENT_ID=your_reddit_client_id
REDDIT_CLIENT_SECRET=your_reddit_client_secret
REDDIT_USER_AGENT=your_app_name- Start the backend:
uvicorn main:app --reload --port 8000- Navigate to frontend directory:
cd frontend- Install dependencies:
npm install- Create
.env.localfile:
OPENAI_API_KEY=your_openai_api_key
NEXT_PUBLIC_BACKEND_URL=http://127.0.0.1:8000- Start the frontend:
npm run devcurl -X POST http://localhost:8000/bulk_scrape/patreonSimply type your question in the chat interface:
- "What are the common complaints about Patreon?"
- "What features do users want most?"
- "How do creators feel about monetization?"
- FastAPI: High-performance API framework
- PRAW: Reddit API wrapper for data collection
- SentenceTransformers: State-of-the-art embeddings
- RAG Manager: Custom embedding persistence system
- Next.js 15: React framework with App Router
- Vercel AI SDK: Streaming AI responses
- Tailwind CSS: Utility-first styling
- React Markdown: Rich text rendering
- Background:
#0a0a0a(Deep black) - Glass:
rgba(255, 255, 255, 0.05-0.1) - Accent: Blue to purple gradient
- Text: High contrast whites and grays
- Backdrop blur for glass panels
- Smooth animations with cubic bezier
- Glow effects on interactive elements
- Liquid morphing animations
POST /bulk_scrape/{subreddit}- Scrape subreddit dataPOST /query- Query the RAG systemGET /rag/stats- Get indexing statisticsPOST /rag/refresh- Manually refresh embeddingsGET /health- Health check
- Embedding Persistence: Cached embeddings for instant queries
- Incremental Updates: Only process new data
- Streaming Responses: Real-time AI output
- Optimized Animations: GPU-accelerated CSS transforms
- Streaming not working: Ensure CORS is enabled and using fetch API
- No embeddings found: Run scraper first to collect data
- Slow responses: Check if embeddings are persisted properly
# Check backend health
curl http://localhost:8000/health
# View RAG statistics
curl http://localhost:8000/rag/stats
# Refresh embeddings
curl -X POST http://localhost:8000/rag/refreshContributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
Built with β€οΈ using modern web technologies and AI