Jobradarpk
JobRadarPK is a full-stack, modular web application designed to replace raw WhatsApp job alert broadcasts with a high-performance, filterable job directory, an automated WhatsApp message parser studio
About the Project
JobRadarPK is a full-stack, modular web application designed to replace raw WhatsApp job alert broadcasts with a high-performance, filterable job directory, an automated WhatsApp message parser studio, and candidate career enablement tools.
â¡ Architecture: Zero Separate Backend Required
You do NOT need a separate backend server!
JobRadarPK is built entirely within the Next.js 14 App Router full-stack framework:
- Frontend UI components, layouts, and client contexts.
- Secure server-side API routes (
/api/jobs,/api/parser,/api/cv,/api/tailor,/api/admin/*). - Database ORM & unified adapter layer.
- JWT session cookies with bcrypt password encryption.
Everything runs seamlessly within a single unified project that can be deployed to Vercel, Netlify, or any Node.js container in 1 click.
ðï¸ Configurable Database Providers (.env)
JobRadarPK includes a unified database abstraction layer (src/lib/db-adapter.ts) allowing you to switch between databases simply by changing your .env file:
# Option A: Zero-config local SQLite (or PostgreSQL on Supabase/Neon) DB_PROVIDER="prisma" DATABASE_URL="file:./dev.db" # Option B: Cloud Firestore (Firebase) DB_PROVIDER="firebase" FIREBASE_PROJECT_ID="your-project-id" FIREBASE_CLIENT_EMAIL="firebase-adminsdk@..." FIREBASE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n..."
ð Key Features
-
Public Job Board & Search Directory
- Instant search across job titles, company names, and technologies.
- Filter by Category, Work Arrangement (Remote, Hybrid, On-site), and Pakistani Cities (Karachi, Lahore, Islamabad, etc.).
- In-place job inspection popup modal (
JobDetailModal) preserving active filter and pagination state. - Real-Time Dynamic Relative Time: Calculates exact job age (
Just now,3 hours ago,2 days ago) dynamically on every render. - Automated 7-Day Expiration: Listings older than 7 days are automatically hidden from public search to ensure fresh opportunities.
-
WhatsApp Message Parser Studio (
/admin/parser)- Paste raw daily WhatsApp broadcast messages (e.g.
*15 Daily - [Frontend Developer] Jobs Alert - Agnific*). - Automatically extracts Job Title, Company Name (splitting on the last dash), Location, Work Type, and numeric LinkedIn Job ID.
- Live preview cards with database deduplication checks.
- 1-click batch publishing with automatic generation of clean WhatsApp broadcast announcement text.
- Paste raw daily WhatsApp broadcast messages (e.g.
-
Feature Flags Live Switchboard (
/admin/features)- Toggle any extra feature (
cv_builder,ai_tailoring,compare_jobs,saved_jobs,suggestions,subscriptions) on/off live. - When a feature is disabled, it is completely hidden from the Navbar, Mobile Drawer, Footer, and Job Cards.
- Toggle any extra feature (
-
Structured ATS CV Builder (
/cv-builder)- Multi-tab resume builder (Personal Info, Work Experience, Education, Skills, Projects).
- Recruiter-ready ATS document preview with print-to-PDF styles.
-
AI Resume Tailoring Engine (
/tailor/[id])- Rewords authentic candidate experience bullets to match the target job's keywords without hallucinating false skills or employers.
- Side-by-side visual diff viewer (Original vs Tailored).
-
Role Comparator Matrix (
/compare)- Select 2 to 4 roles and compare technologies, work models, and requirements side-by-side.
-
Pakistani Digital Wallet Subscriptions (
/subscription&/admin/subscriptions)- Monthly Pro tier (~PKR 299/mo) with Easypaisa, JazzCash, and bank transfer manual payment proof submission and admin verification queue.
-
Community Feedback & Ideas Board (
/suggestions)- Upvote feature requests and bug reports with official Team Agnific status roadmap tags and admin replies.
ð Quick Start Guide
1. Clone & Install Dependencies
git clone https://github.com/your-repo/jobradarpk.git cd jobradarpk npm install
2. Configure Environment Variables
Copy .env.example to .env:
cp .env.example .env
3. Initialize Database & Seed Sample Data
# Push Prisma schema to SQLite dev.db npm run db:push # Seed feature flags, admin account, pro candidate, and sample tech jobs npm run db:seed
4. Run Development Server
npm run dev
Open http://localhost:3000 in your browser.
𧪠Testing
Run the automated WhatsApp parser unit test suite:
npm run test:parser
Run the production build verification:
npm run build
ð Demo Accounts
| Account Role | Email | Password | Permissions |
| :--- | :--- | :--- | :--- |
| Admin | admin@jobradar.pk | admin123 | Full access to Parser Studio, Feature Flags, Job Inventory, Payment Approvals, and Suggestions Moderator. |
| Candidate | user@jobradar.pk | user123 | Preloaded with structured ATS CV profile and active 30-day Pro subscription. |
âï¸ Legal & Attribution Notice
JobRadarPK structures and aggregates publicly available job announcements originally broadcasted across tech community WhatsApp groups and public LinkedIn job listings. All trademarks and company names belong solely to their respective hiring organizations.
Built by Team Agnific for the Pakistani Tech Community.
Project Timeline
Technologies
External Links
Related Projects
Projects built with similar technologies.
Online Html Editor And Viewer
The Online HTML Editor and Viewer is a simple web application built with Flask that allows users to write and preview HTML code in real-time.
Examina Ai
Using AI, It transforms raw study materials into structured, verified examination sets with support for institutional export formats like Moodle XML.
Bulk Name Checker
A high-performance web application for entrepreneurs, marketers, and developers who need to validate name availability at scale.