PHPackages                             ddt/jobbot - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ddt/jobbot

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ddt/jobbot
==========

A plug-and-play AI-powered Job Bot chatbot for Laravel applications

v1.0.0(1mo ago)03↓50%MITPHPPHP ^8.1

Since Jun 11Pushed 1mo agoCompare

[ Source](https://github.com/vishwjeet-45/jobbot)[ Packagist](https://packagist.org/packages/ddt/jobbot)[ RSS](/packages/ddt-jobbot/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

🤖 JobBot — Laravel AI Chatbot Package
=====================================

[](#-jobbot--laravel-ai-chatbot-package)

[![Latest Version on Packagist](https://camo.githubusercontent.com/3b286bef3a7c879e4728037de55e8aba9d084b431bae485e6d9947db0cb09928/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6464742f6a6f62626f742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ddt/jobbot)[![License](https://camo.githubusercontent.com/fc1eb2fc631c35b71ea1ee39bc4297f9e1e8cc4bbd2fc53f3759d1f304eb59a1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f76697368776a6565742d34352f6a6f62626f743f7374796c653d666c61742d737175617265)](LICENSE)

A plug-and-play AI-powered Job Bot chatbot for Laravel applications.
Candidates dhundein, jobs search karein, resume parse karein — sab kuch ek chatbot se!

[![JobBot Preview](https://raw.githubusercontent.com/vishwjeet-45/jobbot/main/preview.png)](https://raw.githubusercontent.com/vishwjeet-45/jobbot/main/preview.png)

---

✨ Features
----------

[](#-features)

- 🔍 **Candidate Search** — Skill se candidates dhundo (DB-powered)
- 💼 **Job Search** — Skill/title se jobs dhundo
- 📄 **Resume Parser** — PDF/DOCX upload → AI se name, email, phone, skills extract
- ➕ **Add Candidate** — Step-by-step multi-turn form via chat
- 👤 **My Profile** — Logged-in user ki details
- 🧠 **AI Fallback** — OpenRouter API se general questions ka jawab
- 🎙️ **Voice Input** — Mic se query bolein
- 🔧 **Fully Customizable** — Intents JSON, custom handlers, config sab publishable

---

📦 Requirements
--------------

[](#-requirements)

RequirementVersionPHP^8.1Laravel^10.0 or ^11.0pdftotext (poppler-utils)For PDF parsingantiwordFor DOC parsing---

🚀 Installation
--------------

[](#-installation)

### Step 1 — Composer se install karo

[](#step-1--composer-se-install-karo)

```
composer require ddt/jobbot
```

### Step 2 — Install command chalao

[](#step-2--install-command-chalao)

```
php artisan jobbot:install
```

Yeh command automatically karega:

- ✅ `config/jobbot.php` publish
- ✅ `resources/views/vendor/jobbot/` publish
- ✅ `jobbot/intents.json` create (customize karne ke liye)
- ✅ `.env` me required keys add

### Step 3 — OpenRouter API key set karo

[](#step-3--openrouter-api-key-set-karo)

```
OPENROUTER_KEY=your_openrouter_api_key_here
JOBBOT_NAME=Job Sphere Assistant
JOBBOT_INITIALS=JS
```

> OpenRouter API key:

### Step 4 — Blade layout me component add karo

[](#step-4--blade-layout-me-component-add-karo)

```
{{-- resources/views/layouts/app.blade.php --}}

    {{-- your content --}}

    @include('jobbot::components.job-bot')

```

**That's it! 🎉** Chatbot bottom-right corner me appear ho jayega.

---

⚙️ Configuration
----------------

[](#️-configuration)

`config/jobbot.php`:

```
return [
    'openrouter_key'   => env('OPENROUTER_KEY'),
    'openrouter_model' => env('JOBBOT_AI_MODEL', 'nex-agi/nex-n2-pro:free'),
    'route_prefix'     => 'jobbot',           // Routes: /jobbot/query, /jobbot/resume
    'middleware'       => ['web', 'auth'],     // Change as needed
    'intents_path'     => null,               // null = package default, ya custom path
    'candidate_role'   => 'Candidate',        // Spatie role name
    'search_limit'     => 20,
    'cache_ttl'        => 5,                  // AI response cache (minutes)

    // Model class overrides
    'models' => [
        'user'      => \App\Models\User::class,
        'candidate' => \App\Models\Candidate::class,
        'skill'     => \App\Models\Skill::class,
    ],

    // UI Customization
    'ui' => [
        'bot_name'    => env('JOBBOT_NAME', 'Job Sphere Assistant'),
        'bot_initials'=> env('JOBBOT_INITIALS', 'JS'),
        'greeting'    => 'Namaste! 👋 Main Job Sphere Assistant hoon.',
        'quick_chips' => [
            ['label' => '🔍 Laravel Candidates', 'query' => 'Laravel developer candidates dhundo'],
            ['label' => '💼 React Jobs',          'query' => 'React ke liye jobs'],
            ['label' => '📄 Parse Resume',         'query' => 'Resume upload'],
            ['label' => '➕ Add Candidate',        'query' => 'Add candidate'],
            ['label' => '❓ Help',                 'query' => 'help'],
        ],
    ],
];
```

---

🧠 Intents Customize Karna
-------------------------

[](#-intents-customize-karna)

Install ke baad `jobbot/intents.json` project root me create hota hai:

```
[
    {
        "key": "find_candidates",
        "patterns": [
            "find candidate",
            "candidate dhundo",
            "developer chahiye"
        ],
        "handler": "find_candidates"
    },
    {
        "key": "my_custom_intent",
        "patterns": [
            "salary check",
            "salary dikhao"
        ],
        "handler": "salary_check"
    }
]
```

Phir `config/jobbot.php` me path set karo:

```
'intents_path' => base_path('jobbot/intents.json'),
```

---

🔧 Custom Handler Banana
-----------------------

[](#-custom-handler-banana)

Kisi bhi intent ka handler apni class se replace kar sakte hain:

### Step 1 — Handler class banao

[](#step-1--handler-class-banao)

```
