Mini Perplexity is an advanced AI chat assistant that combines real-time web search capabilities with state-of-the-art language models. Built with React, FastAPI, and Cloudflare AI, it offers an enterprise-grade solution for intelligent, context-aware conversations with accurate source attribution.
- ๐ Real-time Web Intelligence: Integrates Google and Bing search APIs for up-to-date information
- ๐ค Advanced AI Models: Powered by Meta's Llama 3.1 family for human-like conversations
- ๐ Enterprise Security: Clerk authentication and smart rate limiting
- ๐ฑ Responsive Design: Beautiful UI that works seamlessly across all devices
- ๐ฏ Smart Context: Maintains conversation flow with efficient state management
- Real-time web search integration
- Custom URL content analysis
- Multiple AI model support (LLAMA_3_1_70B_INSTRUCT, LLAMA_3_8B_INSTRUCT)
- Intelligent context management
- Dark/Light mode theming
- Dynamic typing animations
- Responsive grid layouts
- Interactive message history
- Structured search result display
- Secure authentication
- Rate limiting
- Session management
- Source attribution
- Error handling
React 18 + TypeScript
Tailwind CSS
Clerk Authentication
Lucide React Icons
React Markdown
FastAPI
Cloudflare AI
Pydantic
Google & Bing Search APIs
Custom Rate Limiting
- Node.js 16+
- Python 3.8+
- NPM or Yarn
- Virtual environment tool
# Frontend (.env)
VITE_API_HOST=http://localhost:8000
VITE_CLERK_PUBLISHABLE_KEY=your_clerk_key
# Backend (.env)
CLOUDFLARE_API_KEY=your_cloudflare_key
CLOUDFLARE_ACCOUNT_ID=your_account_id
GOOGLE_API_KEY=your_google_key
GOOGLE_SEARCH_CX=your_search_cx
BING_API_KEY=your_bing_key
# Clone and install
git clone https://github.com/yourusername/mini-perplexity.git
cd mini-perplexity
# Frontend setup
cd frontend
npm install
# Backend setup
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# Launch application
npm run dev # Frontend
uvicorn app.main:app --reload # Backend
Visit http://localhost:5173
to start using Mini Perplexity.
- Response streaming implementation
- Multi-language support
- Voice interaction capabilities
- Redis-based caching
- Custom knowledge base integration
- Enhanced monitoring and analytics
We welcome contributions! See our Contributing Guidelines for:
- Code style guide
- Development workflow
- Pull request process
This project is licensed under the MIT License - see the LICENSE file for details.
- Cloudflare AI for AI capabilities
- Clerk for authentication
- FastAPI framework
- Open source community
Created by Paritosh Tripathi | Report Bug | Request Feature
If you find this project useful, please consider giving it a โญ๏ธ