Vichaar (विचार) is an AI-powered idea validation platform that helps entrepreneurs, product managers, and innovators validate their ideas through patent analysis, market research, and AI-driven insights. Get instant feedback on your idea's novelty, market potential, and competitive landscape.
- 🔍 Patent Analysis: Discover similar patents and avoid reinventing the wheel
- 🏢 Startup Validation: Check if similar startups exist in the market
- 📊 Market Trends: Analyze market interest and growth potential
- 🤖 AI-Powered Suggestions: Get smart recommendations to improve your idea
- 🔐 Secure Authentication: Built-in user authentication with Clerk
- 📱 Modern UI: Beautiful, responsive interface built with React and Tailwind CSS
- React 18 with Vite
- Tailwind CSS for styling
- Clerk for authentication
- Axios for API communication
- React Router for navigation
- FastAPI for API development
- Python for AI/ML processing
- Google Patents API for patent search
- Sentence Transformers for similarity analysis
- JWT for secure authentication
- Python 3.8+
- Node.js 16+
- npm or yarn
# Clone the repository
git clone https://github.com/scopophobic/vichaar.git
cd vichaar
# Install Python dependencies
pip install -r requirement.txt
# Install frontend dependencies
cd frontend
npm install
cd ..
-
Create a Clerk Account:
- Go to Clerk Dashboard
- Create a new application
- Get your API keys
-
Set up Environment Variables: Create a
.env
file in the project root:CLERK_PUBLISHABLE_KEY=pk_test_your_clerk_publishable_key_here CLERK_SECRET_KEY=sk_test_your_clerk_secret_key_here CLERK_JWT_ISSUER=https://clerk.your-domain.com CLERK_JWT_AUDIENCE=your-audience
-
Update Frontend Configuration: Replace the placeholder in
frontend/src/App.jsx
:const CLERK_PUBLISHABLE_KEY = "pk_test_YOUR_ACTUAL_CLERK_PUBLISHABLE_KEY";
Option A: Use the startup script (Recommended)
python start_dev.py
Option B: Manual startup
# Terminal 1: Start backend
python -m uvicorn main:app --host 0.0.0.0 --port 8000 --reload
# Terminal 2: Start frontend
cd frontend
npm run dev
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
- Sign Up/Login: Create an account or sign in with your existing credentials
- Enter Your Idea: Describe your innovation in detail
- Get Analysis: Receive instant insights on:
- Novelty score compared to existing patents
- Similar patents and technologies
- Market potential assessment
- AI-powered improvement suggestions
Variable | Description | Default |
---|---|---|
CLERK_PUBLISHABLE_KEY |
Your Clerk publishable key | Required |
CLERK_SECRET_KEY |
Your Clerk secret key | Required |
CLERK_JWT_ISSUER |
Clerk JWT issuer URL | Required |
CLERK_JWT_AUDIENCE |
Clerk JWT audience | Required |
API_HOST |
Backend host | 0.0.0.0 |
API_PORT |
Backend port | 8000 |
DEBUG |
Debug mode | False |
ALLOWED_ORIGINS |
CORS allowed origins | http://localhost:5173 |
Run the authentication test suite:
python test_auth.py
vichaar/
├── frontend/ # React frontend
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── App.jsx # Main app with Clerk integration
│ │ └── ...
│ ├── package.json
│ └── ...
├── main.py # FastAPI backend
├── auth.py # Clerk authentication utilities
├── config.py # Configuration management
├── models.py # Pydantic models
├── llm.py # AI/ML processing
├── google_patents.py # Patent search functionality
├── similarity.py # Similarity analysis
├── start_dev.py # Development startup script
├── test_auth.py # Authentication tests
├── CLERK_SETUP.md # Detailed Clerk setup guide
└── requirement.txt # Python dependencies
- Frontend: User signs up/logs in via Clerk components
- Clerk: Generates JWT token and manages session
- Frontend: Sends JWT token with API requests
- Backend: Verifies JWT using Clerk's public keys
- Backend: Processes request and returns results
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Follow the existing code style
- Add tests for new features
- Update documentation as needed
- Ensure authentication is properly implemented for new endpoints
This project is licensed under the MIT License - see the LICENSE file for details.
- Clerk for authentication infrastructure
- Google Patents API for patent data
- FastAPI for the backend framework
- React and Tailwind CSS for the frontend
- Project Link: https://github.com/scopophobic/vichaar
- Issues: GitHub Issues
Made with ❤️ for innovators and entrepreneurs