Skip to content

About

RRaptor Final

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Raptor Recruiter 🦖

Raptor Recruiter is a sleek, AI-powered recruitment dashboard designed to streamline the workflow for the South African hospitality industry. This single-page application provides a comprehensive suite of tools for candidate management, interview scheduling, and advanced, AI-driven data analysis, all wrapped in a modern, dark-themed interface.


🚀 Application Overview

image

Raptor Recruiter serves as a central command center for recruiters. It provides an at-a-glance view of the entire recruitment pipeline, from new applicants to successful placements, while leveraging the power of Google's Gemini AI to automate tedious tasks and provide deeper insights.


✨ Features

  • Redesigned Modern UI: A beautiful dark theme with an orange accent, inspired by modern application design, featuring a clear sidebar navigation.
  • Advanced Analytics Dashboard: The main dashboard prioritizes a full-width, dual-axis chart showing recruitment activity (profiles added, interviews, placements) against commission earned over time.
  • Comprehensive Candidate Management: Add, view, edit, search, and filter candidates. A clean, card-based layout provides key information at a glance.
  • Commission Tracking: Log a ZAR amount for each successful placement and visualize the total commission earned directly on the main dashboard graph.
  • Dynamic Interview Calendar: A full-featured calendar that visually flags interview dates and successful placement dates. Click any date to quickly schedule a new interview.
  • AI Conversational Chatbot: "Raptor Assistant" is a context-aware chatbot that can answer questions about the candidates in the database, using only the information available in the CRM.
  • AI-Powered Resume Parsing:
    • Add Candidate: Upload a resume (PDF, JPG, PNG) when adding a new candidate, and the AI will automatically parse the document to pre-fill the form fields.
    • In-depth Analysis: On a candidate's profile, analyze an uploaded resume to generate a concise professional summary, extract key skills, and estimate years of experience.
  • Modal-Driven Workflow: Seamlessly add candidates, schedule interviews, edit profiles, and upload photos without ever leaving the current page.

📄 Pages & Functionality

Dashboard

The central hub of the application. The layout is designed to present the most critical information first.

  • Recruitment Activity Chart: A full-width, interactive chart displaying profiles added, interviews conducted, and candidates placed. A secondary axis plots the total commission earned (in ZAR) as a line graph. Users can toggle between weekly and monthly views.
  • Stat Cards: A compact overview of key metrics: Total Candidates, Placed, Pending, Interviewing, and Rejected.
  • Upcoming Interviews: A list of the next scheduled interviews for easy follow-up.
image

Candidates Page

This page provides a comprehensive view of all candidates in the pipeline.

  • Grid View: Candidates are displayed in cards, showing their name, status, contact info, top skills, and key stats.
  • Search & Filter: A powerful search bar allows finding candidates by name or email. An advanced filter lets you narrow down the list by specific skills.
  • Quick Actions: Add new candidates, edit existing ones, or delete profiles directly from this page.
image

Candidate Profile Page

A deep dive into a single candidate's information.

  • Detailed Information: View contact details, location, availability, and professional information, including commission earned if placed.
  • AI Resume Analysis: Upload resumes and use the Gemini AI to analyze them. The results, including a summary and extracted skills, are displayed clearly.
  • Profile Photo: Upload a photo from your device or take one directly with your camera.
  • Interviews & Notes: View a history of all scheduled interviews and any personal notes added for the candidate.
image

Calendar Page

A visual tool for managing all time-sensitive events.

  • Monthly View: Displays a full month, highlighting days with scheduled interviews or placements.
  • Event Indicators: Different colored dots and icons indicate the status of interviews (Scheduled, Completed) and when a candidate has been placed.
  • Quick Scheduling: Simply click on any day in the calendar to open a modal and schedule a new interview.
image

Settings Page

A placeholder page for future application settings and configurations.

image

🤖 AI Integration (Google Gemini)

The application leverages the gemini-2.5-flash model for three core AI functionalities:

  1. AI Resume Parsing: When adding a new candidate, uploading a resume sends the file to the Gemini API with a specific JSON schema. The model extracts key information (name, email, phone, skills, summary) and the application uses the response to pre-fill the form, saving significant time.
  2. In-depth Resume Analysis: From a candidate's profile, a separate analysis can be triggered. This uses a different prompt and schema to generate a more detailed professional summary, a list of extracted skills, and an estimation of experience years.
  3. Conversational AI Chatbot: The "Raptor Assistant" is powered by a chat session that is initialized with a system instruction containing the current, real-time data of all candidates. This ensures the chatbot's responses are strictly grounded in the CRM's data, making it a reliable tool for quick queries.

🛠️ Tech Stack


🚀 Getting Started

This application is designed to run in a browser-based environment that provides the process.env.API_KEY. The Gemini API key is required for all AI-powered features to function.

How It Works

  1. State Management: contexts/AppContext.tsx initializes the application state with mock data from constants.ts. It provides functions to manage the entire lifecycle of candidates, interviews, and resumes.
  2. API Services: All interactions with the Google Gemini API are handled in services/geminiService.ts. This file contains the logic for parsing resumes and managing the chatbot session.
  3. Routing: App.tsx uses MemoryRouter to handle client-side navigation between pages, creating a smooth, single-page application experience.

About

RRaptor Final

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages