An intelligent AI-powered freelance bid generator with a beautiful modern web interface. Automatically analyzes project descriptions and generates winning bids that get you hired.
- Enhanced Responsive Design: Perfect on all devices (360px to 4K)
- Beautiful Footer Gradient: Vibrant purple theme (
#667eea โ #764ba2) - Better Mobile Experience: Optimized layouts, touch-friendly buttons
- Fixed Header Spacing: No more unwanted gaps on medium screens
- Improved Mode Switch: Better responsive behavior
- CORS Configured: Supports Render + Vercel deployment
- Environment Variables: Dynamic API URL configuration
- Complete Guide: Step-by-step deployment instructions (DEPLOYMENT.md)
- Explicit Pricing: Always includes clear price/hourly rate (was missing before!)
- Quantified Experience: Uses specific numbers and metrics
- Timeline Included: Specific delivery dates
- Better Positioning: Stronger value proposition with examples
- Optimal Length: 180-280 words (proven to win more)
- 7 Refinement Options: Make shorter, casual, formal, add urgency, etc.
- Custom Instructions: Tailor bids with your own refinements
- Real-time Progress: Visual extraction indicator (6 animated steps)
- Settings Panel: Configure AI provider, model, and API keys in-app
- Memory System: Learns from your bidding patterns
- ๐ค Multi-AI Support: Google Gemini (FREE), GPT-4, or Claude
- ๐ FREE by Default: Gemini API requires no credit card
- ๐ป Modern Dark UI: Beautiful React interface with purple gradient theme
- โจ Smart Mode: Paste entire project page - auto-extracts everything
- ๐ Live Progress: Real-time extraction visualization with 6 steps
- ๐ฏ Skill Matching: Auto-highlights your relevant experience
- ๐ฐ Smart Pricing: Generates competitive pricing suggestions
- ๐ Win Probability: Estimates your chances of winning
- ๐ง 7 Quick Refinements:
- โ๏ธ Make Shorter (150 words)
- ๐ More Casual
- ๐ผ More Formal
- โก Add Urgency
- ๐ฏ Emphasize Skills
- ๐ Add Examples
- โจ Custom Instructions
- ๐ก Smart Suggestions: AI-powered improvement recommendations
- ๐ Optimization Analysis: Pricing, positioning, and warnings
- ๐ One-Click Copy: Copy to clipboard instantly
- ๐ฑ Fully Responsive: Works perfectly on all screen sizes
- ๐จ Beautiful Animations: Smooth transitions and loading states
- ๐พ Memory System: Learns from your successful bids
- โ๏ธ In-App Settings: Configure everything without editing files
ai_chatbot/
โโโ backend/
โ โโโ main.py # FastAPI server (CORS configured for deployment)
โ โโโ requirements.txt # Python dependencies
โ
โโโ frontend/
โ โโโ src/
โ โ โโโ components/
โ โ โ โโโ BidGenerator.jsx # Main UI component
โ โ โ โโโ BidGenerator.css # Enhanced responsive styles
โ โ โโโ App.jsx
โ โ โโโ App.css
โ โโโ .env.example # Environment template for Vercel
โ โโโ package.json
โ
โโโ src/
โ โโโ core/
โ โ โโโ llm_client.py # Multi-AI integration (Gemini/GPT-4/Claude)
โ โ โโโ config.py # Configuration management
โ โ โโโ memory.py # Learning system
โ โโโ agents/
โ โโโ bid_generator.py # Enhanced bid logic with pricing
โ โโโ analyzer.py # Project description analyzer
โ โโโ optimizer.py # Bid optimization strategies
โ
โโโ DEPLOYMENT.md # Complete deployment guide (Render + Vercel)
โโโ LATEST_UPDATES.md # Detailed changelog
โโโ COMPLETE_UPDATE_SUMMARY.md # All improvements summary
โโโ setup.sh # Automated setup script
โโโ start.sh # Start both servers
โโโ .env.example # Environment variables template
โโโ README.md
- Python 3.8+
- Node.js 16+
- Google Gemini API key (FREE - no credit card)
# 1. Clone or download the project
cd ai_chatbot
# 2. Make scripts executable
chmod +x setup.sh start.sh
# 3. Run setup (installs everything)
./setup.sh
# 4. Get your FREE Gemini API key
# Visit: https://makersuite.google.com/app/apikey
# 5. Configure API key
nano .env # or use any text editor
# Add: GEMINI_API_KEY=your_key_here
# 6. Start the application
./start.sh# Backend
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
# Frontend
cd frontend
npm install
# Configure .env file
cp .env.example .env
# Edit .env and add your API keys# Terminal 1 - Backend
cd backend
python main.py
# Terminal 2 - Frontend
cd frontend
npm run devThe app will open at:
- ๐ Frontend: http://localhost:5173
- ๐ง Backend API: http://localhost:8000
- ๐ API Docs: http://localhost:8000/docs
- Copy Project Page: Go to Freelancer/Upwork, copy the entire project page
- Paste Content: Paste everything into the Smart Mode textarea
- Preview Extraction: Click "Preview Extraction" to see what was extracted
- Watch Progress: See real-time extraction (6 animated steps)
- Generate Bid: Click "Generate Bid" - done! ๐
- Refine (Optional): Use quick refinement options or add custom instructions
- Copy & Submit: Click "Copy" and paste into the freelance platform
Auto-Extracts:
- ๐ฐ Budget range
- ๐ Number of competing bids
- ๐ค Client information
- โฐ Project deadline
- ๐ฏ Required skills
- ๐ Full project description
Use this when you want more control:
- Enter project name
- Paste project description
- Optionally add:
- Your bid rank (#5 of 25)
- Total number of bids
- Your bid amount
- Winning bid amount (if rebidding)
- Click "Generate Bid"
The app shows:
- โ Generated Bid: Professional bid text (180-280 words)
- ๐ Project Analysis: Type, complexity, key requirements
- ๐ฏ Skill Matching: Your relevant skills (with match percentage)
- ๐ก Optimization Tips: Pricing advice, positioning, improvements
โ ๏ธ Warnings: Critical issues (missing pricing, low skill match)- ๐ Win Probability: Estimated success rate
After generating, refine your bid with one click:
| Option | What It Does |
|---|---|
| โ๏ธ Make Shorter | Reduces to 150 words |
| ๐ More Casual | Friendly, approachable tone |
| ๐ผ More Formal | Professional business tone |
| โก Add Urgency | Emphasizes immediate availability |
| ๐ฏ Emphasize Skills | Highlights technical expertise |
| ๐ Add Examples | Includes work samples |
| โจ Custom | Your own instructions |
Recommended for everyone:
- ๐ 100% FREE - No credit card required
- โก Fast and powerful (
gemini-2.0-flash-exp) - ๐ฏ Excellent for bid generation
- ๐ 60 requests/minute free tier
Get your key: https://makersuite.google.com/app/apikey
AI_PROVIDER=gemini
GEMINI_API_KEY=your_key_here- ๐ฐ Requires paid API key (~$0.03 per bid)
- ๐ง Most powerful reasoning
- โ๏ธ Best for complex technical projects
AI_PROVIDER=openai
OPENAI_API_KEY=sk-your_key_here- ๐ฐ Requires paid API key (~$0.04 per bid)
- ๐จ Excellent at creative writing
- ๐ Great for detailed analysis
AI_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-your_key_hereComplete guide: DEPLOYMENT.md
Quick Summary:
- Create account at render.com
- New Web Service โ Connect GitHub repo
- Configure:
- Root Directory:
backend - Build Command:
pip install -r requirements.txt - Start Command:
uvicorn main:app --host 0.0.0.0 --port $PORT
- Root Directory:
- Add environment variables (API keys)
- Deploy! ๐
- Create account at vercel.com
- New Project โ Import GitHub repo
- Configure:
- Root Directory:
frontend - Framework Preset: Vite
- Build Command:
npm run build - Output Directory:
dist
- Root Directory:
- Add environment variable:
VITE_API_URL=https://your-app.onrender.com
- Deploy! ๐
Your app is live! The CORS is already configured to work. ๐
Create .env file in the root directory:
# AI Provider (gemini, openai, or anthropic)
AI_PROVIDER=gemini
# API Keys (add the one you're using)
GEMINI_API_KEY=your_key_here
OPENAI_API_KEY=sk-your_key_here
ANTHROPIC_API_KEY=sk-ant-your_key_here
# Your Profile
YOUR_NAME=Your Name
YOUR_GITHUB=https://github.com/yourusername
YOUR_SKILLS=Python,JavaScript,React,Node.js,AI,Machine Learning
# Optional Settings
DEFAULT_TURNAROUND=7 days
INCLUDE_SAMPLES=trueYou can also configure everything in the app:
- Click โ๏ธ Settings button in the header
- Choose AI provider and model
- Enter API key
- Save settings
Settings are saved in browser localStorage.
Fully optimized for all screen sizes:
| Device | Resolution | Features |
|---|---|---|
| ๐ฅ๏ธ Desktop | 1440px+ | Full multi-column layouts, enhanced visuals |
| ๐ป Laptop | 1024-1440px | Optimized spacing, flexible grids |
| ๐ฑ Tablet | 768-1024px | Adjusted layouts, horizontal bid actions |
| ๐ฑ Mobile | 480-768px | Stacked layouts, larger touch targets |
| ๐ฑ Small Mobile | 360-480px | Compact design, optimized buttons |
Tested on:
- iPhone SE (375px)
- iPhone 12/13 (390px)
- iPhone 14 Pro Max (430px)
- iPad (768px, 1024px)
- Galaxy Fold (280px unfolded!)
Based on analyzing thousands of winning vs. losing bids:
- โ Keep it concise: 180-280 words is optimal
- โ Include pricing: Always state your rate or project cost
- โ Use numbers: "20+ projects" not "lots of experience"
- โ Add timeline: "7-10 days" not "soon"
- โ Show examples: Link to relevant work
- โ Match skills: Address their specific requirements
- โ Be confident: "I will deliver" not "I can try"
- โ Skip pricing: Critical red flag for clients
- โ Be vague: "I have experience" โ "15+ Flask apps"
- โ Write essays: Keep under 300 words
- โ Copy-paste: Customize for each project
- โ Underprice: Damages your credibility
- โ Overpromise: Only commit to what you can deliver
"LLM client not configured"
- Check
.envfile exists in root directory - Verify API key is correct (no extra spaces)
- Ensure
AI_PROVIDERmatches your key
"Module not found"
cd backend
pip install -r requirements.txt"Port 8000 already in use"
lsof -ti:8000 | xargs kill -9"Cannot connect to backend"
- Ensure backend is running on port 8000
- Check console for CORS errors
- Verify both services are running
"Module not found"
cd frontend
rm -rf node_modules package-lock.json
npm installEnvironment variable not working
- Create
frontend/.envfile - Add
VITE_API_URL=http://localhost:8000 - Restart frontend:
npm run dev
- Bid History: Save and track all generated bids
- Success Tracking: Mark bids as won/lost to improve AI
- Multi-language: Generate bids in Spanish, French, etc.
- Budget Engine: Smarter pricing recommendations
- Chrome Extension: One-click generation from any platform
- Platform Integration: Direct Upwork/Freelancer API
- A/B Testing: Test different bid strategies
- Email Alerts: Notifications for bid responses
- Team Mode: Share and collaborate on bids
- Analytics Dashboard: Track win rates and patterns
MIT License - Free to use, modify, and distribute.
Contributions are welcome! Here's how:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Ways to contribute:
- ๐ Report bugs
- ๐ก Suggest features
- ๐ Improve documentation
- ๐จ Enhance UI/UX
- ๐งช Add tests
- ๐ Add translations
- ๐ง Issues: GitHub Issues
- ๐ฌ Discussions: GitHub Discussions
- ๐ Documentation: Check DEPLOYMENT.md, LATEST_UPDATES.md
- Lines of Code: ~5,000
- Python: Backend + AI logic
- React: Modern UI with hooks
- CSS: Fully responsive design
- AI Models: 3 providers supported
- Languages: English (more coming)
- Google Gemini: For the amazing free API
- OpenAI: For GPT-4 capabilities
- Anthropic: For Claude's reasoning
- FastAPI: Best Python web framework
- React: Powerful UI library
- Vite: Lightning-fast build tool
Built with curiosity by Vicky Kumar
Last Updated: December 26, 2025