Complete setup instructions for running IssueMatch locally.
- Python 3.9 or higher
- Node.js 18 or higher
- Git
- MongoDB Atlas account (free tier)
- Google AI Studio API key
- GitHub OAuth app
cd backend# Windows
python -m venv venv
venv\Scripts\activate
# macOS/Linux
python -m venv venv
source venv/bin/activatepip install -r requirements.txtCreate .env file in backend/ directory:
# MongoDB
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/?appName=Cluster0
# Google AI
GOOGLE_AI_STUDIO_API_KEY=your_gemini_api_key
# GitHub OAuth
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret
# Security
SECRET_KEY=your_secret_key_for_sessions
# API Configuration
PROJECT_NAME="IssueMatch"
API_V1_STR="/api/v1"uvicorn app.main:app --reload --port 8000Backend will be available at: http://localhost:8000
cd frontendnpm installCreate .env.local file in frontend/ directory:
NEXT_PUBLIC_API_URL=http://localhost:8000/api/v1
NEXT_PUBLIC_APP_URL=http://localhost:3000
GOOGLE_AI_API_KEY=your_gemini_api_key
GOOGLE_AI_MODEL=gemini-2.0-flash-litenpm run devFrontend will be available at: http://localhost:3000
- Go to GitHub Settings → Developer settings → OAuth Apps
- Click "New OAuth App"
- Fill in details:
- Application name: IssueMatch Local
- Homepage URL: http://localhost:3000
- Authorization callback URL: http://localhost:8000/api/v1/auth/callback
- Click "Register application"
- Copy Client ID and Client Secret
- Add them to
backend/.env
- Go to MongoDB Atlas
- Create free account
- Create new cluster (M0 free tier)
- Click "Connect" on your cluster
- Choose "Connect your application"
- Copy connection string
- Replace
<password>with your database password - Add to
backend/.envasMONGODB_URI
- Network Access → Add IP Address
- Allow access from anywhere (0.0.0.0/0) for development
These collections are created automatically:
users- User profiles and skillsleaderboard- Contribution rankingsmentorship_requests- Mentor requestsreferrals- Referral trackingcontributions- User contributions
- Go to Google AI Studio
- Create API key
- Add to
backend/.envasGOOGLE_AI_STUDIO_API_KEY - Add to
frontend/.env.localasGOOGLE_AI_API_KEY
curl http://localhost:8000/Expected response:
{"message": "Welcome to IssueMatch API"}Open http://localhost:3000 in browser
Import errors
pip install -r requirements.txt --upgradeMongoDB connection failed
- Check connection string format
- Verify IP whitelist in Atlas
- Check username/password
GitHub OAuth not working
- Verify callback URL matches exactly
- Check client ID and secret
Module not found
rm -rf node_modules package-lock.json
npm installEnvironment variables not loading
- Restart dev server after changing
.env.local - Ensure chatbot variables are set
See DEPLOYMENT.md for production deployment instructions.
- Check GitHub Issues
- Join Discussions
- Read Contributing Guide