WhatsApp-AI-Job-Assistant-Bot
# π± WorqNow β WhatsApp AI Job Assistant (Public Demo) A clean **public demo** of a WhatsApp-based AI Job Assistant built using **FastAPI**. This demo showcases: - WhatsApp webhook handling - Intent recognition - Job search example (mocked) - CV builder example (mocked) - Structured conversation flow - Clean single-file architecture β οΈ **NOTE:** This is a **safe demo version**. The real production WorqNow bot contains: - Real job APIs (Remotive / JSearch) - MongoDB user storage - PDF CV generator - WhatsApp media uploads - Daily alerts scheduler - Advanced NLU + fuzzy matching - Onboarding & subscription engine - User preference tracking - Business logic Those features are **intentionally removed** from this public demo. --- ## β¨ Features (Demo Version) - π WhatsApp Webhook Receiver - π§ Simple Intent Detection - π Mock Job Search Flow - π Mock CV Builder (Q&A Flow) - π¬ Typing Indicator (simulated) - π Clean Structure - β‘ FastAPI Backend - π‘ Safe and GitHub-friendly --- ## π Project Structure ``` worqnow-demo/ β βββ main.py # Full demo logic (single file) βββ README.md # Project documentation βββ .env.example # Demo verify token βββ module/ | βββ university-advisor # Various university details for students that want to study more | βββ sample_payloads/ β βββ incoming_message.json β βββ status_update.json β βββ templates/ βββ cv_demo.html # Minimal CV layout (demo) ``` --- ## π Getting Started ### 1οΈβ£ Clone the Repository ```bash git clone https://github.com/<your-username>/worqnow-demo cd worqnow-demo ``` ### 2οΈβ£ Install Dependencies ```bash pip install fastapi uvicorn python-multipart ``` *(No databases or external APIs needed for this demo.)* --- ## π§ Environment Setup Create your `.env` file: ```bash cp .env.example .env ``` `.env` content: ``` VERIFY_TOKEN=DEMO_TOKEN ``` Used only for webhook verification. --- ## βΆοΈ Run the Server ```bash uvicorn main:app --reload --port=8000 ``` Visit: ``` http://localhost:8000/webhook?hub.verify_token=DEMO_TOKEN&hub.challenge=123 ``` If everything works, youβll see: ``` 123 ``` --- ## π§ͺ Testing Incoming Messages Send this JSON using Postman/curl: ```json { "entry": [{ "changes": [{ "value": { "messages": [{ "from": "234801000000", "text": { "body": "search frontend jobs" } }] } }] }] } ``` Your terminal will print the simulated job results. --- ## π― Supported Demo Commands | Command | What It Does | |--------|-----------------------------| | **search UI/UX** | Returns mock job listings | | **create cv** | Starts CV builder demo | | **profile** | Shows demo profile | | **help** | Shows available demo commands | | **feedback** | Records mock feedback | --- ## π§© Additional Demo Files ### `templates/cv_demo.html` A minimal HTML CV layout (demo only). ### `sample_payloads/` Realistic WhatsApp payloads for learning how Webhooks work. --- ## π Purpose of This Demo This repository is designed to: - Demonstrate WhatsApp automation with FastAPI - Serve as a **safe open-source portfolio project** - Show my architecture skills - Help others learn how WhatsApp Cloud API works The real production WorqNow bot remains private. --- ## π License MIT License β free to use, modify, and learn from.