Skip to content

elmerdema/JobJet

Repository files navigation

Career Services Chatbot - "JobJet"

Dema, Elmer,

Project description

JobJet is a robust career service chatbot designed to assist job seekers in finding the perfect job match. Leveraging the power of Rasa and Python, JobJet provides an intuitive and interactive conversational experience for users navigating the complex world of job hunting. In addition to Rasa and Python, Flask is employed to handle essential endpoints, enhancing the functionality and seamless integration of features.

JobJet uses Flask to handle various endpoints:

  • Register:

    • Endpoint: /register
    • Method: POST
    • Description: Allows users to register for JobJet.
  • Login:

    • Endpoint: /login
    • Method: POST
    • Description: Handles user login for JobJet.
  • Job Lookup:

    • Endpoint: /job_lookup
    • Method: GET
    • Description: Retrieves job information based on user queries.
  • Invite:

    • Endpoint: /invite
    • Method: POST
    • Description: Sends job invitations to selected candidates.

Installation

Requirements

  • Python 3.10.13
  • Rasa 3.6.12
  • Rasa SDK 3.6.2

Installation steps

  1. Clone the repository
git clone https://github.com/elmerdema/JobJet
  1. Create a virtual environment
python3 -m venv venv
  1. Activate the virtual environment
.\venv\Scripts\activate
  1. Install the requirements
pip install -r requirements.txt

Basic Usage

How to start the chatbot after installation is complete (typically with rasa run and rasa shell)

rasa run

Example of a typical conversation

Hans: I would like to apply for some jobs


Deggster: Of course, Hans! What position would you like to apply?

[Deggster checks if the position exists]

Hans: I would like to apply for Web Developer positions


[ Deggster retrieves the job postings from Emma]


Deggster: Here are some developer job openings I found: Full Stack Developer, Junior Front-End Developer, Back-End Engineer. Would you like to apply for one of the following positions


Hans: Yes,I would like to apply for the Full Stack Position

[Deggster applies for the position]

Deggster: The application was successful.



Use Case 2: Recruiter Wants to Invite Working Students for an Interview

Otto: Hello, Deggster! I'm looking to invite a student for an interview


Deggster: Absolutely, Otto! What is the username of your student?


Otto: His username is jz1337

[Deggster check if the user exists]
[Deggster invites the user]

Deggster: The user has been successfully invited

Implementation of the Requests

Requests are

  • Check for right fit [DONE]
  • 1 system persona and 3 user persona [DONE]
  • At least 5 use cases [DONE]
  • Find the technical prerequisites [DONE]
  • For every persona at least 2 example dialogs [DONE]
  • A dialog flow [DONE]
  • Implementation in rasa (yaml and Python files)

Work done

References

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages