Skip to content

uhbhy/HR-Resume-Query-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

HR-Query-App

Effortlessly search and index resumes with the HR Search Application, a powerful tool built using Streamlit. This application allows HR professionals to perform keyword searches on resumes, providing a secure and user-friendly interface for managing and accessing candidate information.

Features

  • Secure user login with password hashing.

  • Index resumes stored in a specified directory.

  • Keyword search with support for partial matching.

  • Display previews of matching resumes.

  • User-friendly interface for seamless navigation. Technologies Used

  • Python

  • Streamlit

  • Whoosh (for indexing and searching)

  • PyMuPDF (fitz) (for PDF text extraction)

  • SQLite (for user authentication) How it Works?

  • User Input Login and SignUp: Users can create an account and log in securely using hashed passwords. Keyword Search: Users input keywords (separated by spaces or commas) to search within the indexed resumes.

  • Resume Indexing

  • PDF Text Extraction: The application extracts text from PDF resumes using PyMuPDF.

  • Index Creation: Resumes are indexed using Whoosh, enabling efficient and fast search capabilities.

  • Search Functionality Keyword Parsing: The input keywords are split and processed to support partial matching. Search Execution: The Whoosh searcher executes the search query and returns matching results.

  • Result Display: The application displays filenames and text previews of the matching resumes. CODE OVERVIEW Libraries Used

  • Streamlit: For creating the web application interface.

  • Whoosh: For indexing and searching resume content.

  • PyMuPDF (fitz): For extracting text from PDF files.

  • SQLite: For managing user authentication.

  • Hashlib: For hashing passwords. Key Functions

  • User Authentication:

    create_table(): Creates a table for storing user credentials. add_data(username, password): Adds a new user to the database. login_user(username, password): Validates user login. make_hashes(password): Hashes the user's password. check_hashes(password, hashed_text): Checks if the input password matches the stored hashed password. -PDF Text Extraction: extract_text_from_pdf(pdf_path): Extracts text from a given PDF file. -Resume Indexing: index_resumes(directory): Indexes resumes from the specified directory using Whoosh. -Resume Search: search_resumes(query): Searches the indexed resumes using the input query with support for partial matching.

  • User Interface Login and SignUp Pages: Users can log in or create a new account. Home Page: Allows logged-in users to search for resumes by entering keywords. Search Results: Displays the filenames and previews of the resumes matching the search criteria.

  • Skills Required Python Programming: Understanding of Python for backend logic and data processing. Web Development with Streamlit: Building user interfaces and handling user interactions. Database Management: Using SQLite for storing and managing user credentials. Text Processing: Extracting and processing text from PDF files. Information Retrieval: Using Whoosh for indexing and searching text data. Summary The HR Search Application simplifies the process of managing and searching resumes for HR professionals. With a secure login system, efficient text extraction, and powerful search capabilities, this tool enhances productivity and makes candidate information easily accessible.

About

A Streamlit-based application that allows HR professionals to search and index resumes. The app supports secure user login, keyword search with partial matching, and displays previews of matching resumes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages