Skip to content

Latest commit

 

History

67 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HR-PG (Human Resources - Professional Gauntlet)

A turn-based interview simulator that reimagines the hiring process as a retro 16-bit boss battle. Practice your interview skills by battling recruiter bosses with high-quality STAR-method responses!

Overview

HR-PG helps job seekers prepare for interviews through an engaging, gamified experience. Players choose a role, answer behavioral and technical questions, and receive immediate feedback on answer quality translated into "Attack Damage" against the recruiter boss.

Target Users

  • Students and recent graduates
  • Early-to-mid career professionals
  • Anyone preparing for job interviews

Tech Stack

  • Frontend: React, TypeScript, Tailwind CSS, Vite
  • Backend: Python, Flask, SQLAlchemy, SQLite
  • LLM Integration: Vanderbilt Amplify API
  • Authentication: JWT (JSON Web Tokens)

Project Structure

hr-pg/
├── backend/
│   ├── app.py              # Flask API server
│   └── requirements.txt    # Python dependencies
├── frontend/
│   ├── src/
│   │   ├── pages/
│   │   │   ├── Home.tsx           # Landing page
│   │   │   ├── LevelSelect.tsx    # Role selection page
│   │   │   ├── Game.tsx           # Main game interface
│   │   │   └── Results.tsx        # Game results page
│   │   ├── App.tsx         # Main app with routing
│   │   └── index.css       # Global styles with Tailwind
│   ├── package.json
│   └── tailwind.config.js
└── README.md

Current Features

  • Home Page: Welcome screen with game introduction and login/register
  • User Accounts: Sign up and log in to save your game history
  • Level Select: Choose from different job roles (Software Engineer, Product Manager, Data Scientist)
  • Game Page: Answer interview questions with health bar system. Progress is saved to the database.
  • Results Page: Victory or defeat screen based on performance
  • AI Scoring: Real-time feedback and scoring using Vanderbilt Amplify API

Setup Instructions

Prerequisites

  • Node.js (v18 or higher)
  • Python (v3.8 or higher)
  • pip (Python package manager)

Backend Setup

  1. Navigate to the backend directory:

    cd backend
  2. Create a virtual environment (recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install Python dependencies:

    pip install -r requirements.txt
  4. Configure Environment Variables: Create a .env file in the backend directory (copy from .env.example).

    cp .env.example .env

    Generate a secure JWT secret key:

    python -c "import secrets; print(secrets.token_hex(32))"

    Update your .env file with the generated key and your Amplify API key:

    AMPLIFY_API_KEY=your_api_key
    JWT_SECRET_KEY=paste_generated_key_here
  5. Update database:

    flask db upgrade
  6. Run the Flask server:

    python app.py

    The backend will start at http://localhost:5000

Frontend Setup

  1. Navigate to the frontend directory:

    cd frontend
  2. Install dependencies:

    npm install
  3. Run the development server:

    npm run dev

    The frontend will start at http://localhost:5173

Running the Application

  1. Start the backend server in one terminal:

    cd backend
    python app.py
  2. Start the frontend development server in another terminal:

    cd frontend
    npm run dev
  3. Open your browser and navigate to http://localhost:5173

How to Play

  1. Start Game: Click "Start Game" on the home page
  2. Select Role: Choose the job position you want to interview for
  3. Answer Questions: Respond to interview questions using the STAR method
    • Situation: Describe the context
    • Task: Explain what needed to be done
    • Action: Detail what you did
    • Result: Share the outcome
  4. Watch Health Bars: Good answers damage the boss, poor answers damage you
  5. Win or Lose: Deplete the boss's health to "secure the offer" or lose all your health and get "ghosted"

Future Development

  • Integrate Vanderbilt Amplify API for LLM-powered question generation
  • Implement NLP-based answer evaluation
  • Add 16-bit retro graphics and animations
  • Include sound effects and background music
  • Expand role catalog with more positions
  • Add difficulty settings
  • Implement database with accounts and progress tracking
  • Create user dashboard
  • Add resume-based questions and feedback
  • Add audio input and output for verbal interview practice
  • Create practice mode with feedback

Contributing

This is a student project. Contributions and suggestions are welcome!

License

See LICENSE file for details.

About

HR-PG is a turn-based interview simulator that reimagines the hiring process as a boss battle. Using a Large Language Model as the "Dungeon Master," the game generates role-specific behavioral and technical questions that the player must counter with high-quality, STAR-method responses.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages