applisync-v2/
├── extension/
│ ├── manifest.json
│ ├── background.js ← Supabase + LLM routing
│ ├── content/
│ │ ├── content.js ← Floating overlay + form tracker
│ │ └── overlay.css ← Overlay styles
│ ├── popup/
│ │ ├── popup.html/css/js ← Extension popup
│ ├── settings/
│ │ ├── settings.html/css/js ← AI provider settings page
│ └── icons/
│ ├── icon16.png
│ ├── icon48.png
│ └── icon128.png
├── backend/
│ ├── main.py ← FastAPI: Scrapling + LLM routing
│ └── requirements.txt
├── supabase-schema.sql
└── README.md
- Create project at supabase.com
- SQL Editor → Run
supabase-schema.sql - Settings → API → copy Project URL and anon key
cd backend
pip install -r requirements.txt
# Create .env file
echo "GROQ_API_KEY=your_free_groq_key_here" > .env
# Run locally
uvicorn main:app --reload --port 8000
# Test
curl http://localhost:8000/health- Push backend/ to GitHub
- railway.app → New Project → Deploy from GitHub
- Add env variable:
GROQ_API_KEY=gsk_... - Copy your Railway URL:
https://your-app.up.railway.app
- render.com → New Web Service → connect GitHub
- Build command:
pip install -r requirements.txt - Start command:
uvicorn main:app --host 0.0.0.0 --port $PORT - Add env var:
GROQ_API_KEY
const SUPABASE_URL = 'https://YOUR_PROJECT.supabase.co';
const SUPABASE_ANON = 'YOUR_ANON_KEY';
const BACKEND_URL = 'https://your-app.up.railway.app';Put your AppliSync "A" logo in icons/ at:
- icon16.png (16×16)
- icon48.png (48×48)
- icon128.png (128×128)
chrome://extensions/→ Enable Developer mode- Load unpacked → select
extension/folder - Pin AppliSync to toolbar
- Click extension icon → ⚙️ Settings
- Choose your AI provider:
- Groq Default → works immediately, no setup
- Ollama → install ollama.com, run
ollama pull llama3.1 - Others → paste your API key
- Save Settings
- Open any job page (LinkedIn, Naukri, Indeed, company site)
- The AppliSync floating card appears bottom-right
- Click ⚡ Extract This Page → AI reads & fills the form
- Fill the application form on the page (fields auto-captured)
- Upload resume (filename auto-captured)
- Click Apply on the job site
- Click 💾 Save Application on the AppliSync card
- ✅ Saved to Supabase with all details!
- The card stays open across all steps
- Fill each page → card keeps collecting your inputs
- On final step, click Save → everything saved at once
| Field | Source |
|---|---|
| Portal | Detected from URL |
| Company | AI extracts from page |
| Role | AI extracts from page |
| Location | AI extracts from page |
| Salary | AI extracts from page |
| Posting Date | AI extracts (parses "2 weeks ago") |
| Experience Required | AI extracts (defaults to Fresher) |
| Job Description | AI extracts full JD |
| Applied Date | Current timestamp |
| Form Fields | Every input/textarea you filled |
| Files Submitted | Filename of uploaded resume/docs |
Auto-detected: LinkedIn, Naukri, Indeed, Internshala, Glassdoor, Wellfound, Lever, Greenhouse, Workday, any company website
| Provider | Cost | Notes |
|---|---|---|
| Groq Default | Free | Built into AppliSync |
| Groq (own key) | Free | Higher limits |
| Ollama | Free | Local, private |
| OpenAI | ~₹0.05/call | GPT-4o-mini |
| Gemini | Free tier | 1.5 Flash |
| Anthropic | ~₹0.04/call | Claude Haiku |
| OpenRouter | Some free | 100+ models |