Skip to content

coderjs-lab/InSight-MVP-v1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InSight MVP

InSight is an MVP for an AI-guided career exploration companion. It blends interview emotion analysis, immersive "day in the life" storytelling, and job market forecasting to help students discover paths aligned with their energy and confidence.

Features

features are as follows:

  • AI-powered mock interview analysis – Combines the spoken transcript with multi-modal engagement metrics to surface confidence, excitement, and stress signals per answer.
  • Personalised career recommendations – Matches emotional resonance and topic interest to a curated career library with transparent reasoning.
  • AI-generated day-in-the-life storyboard – Generates a narrated sequence that can be fed into video tooling to visualise daily tasks, environments, and tools for each role.
  • Job market forecasting – Provides growth outlook, salary trend, and automation risk for every supported career.

Project layout

app/
├── data/careers.json        # Structured knowledge base powering all features
├── main.py                  # FastAPI application with HTTP endpoints
├── schemas.py               # Pydantic models shared across services
└── services/                # Modular business logic
    ├── analysis.py          # Interview signal extraction heuristics
    ├── data.py              # Career library loader
    ├── forecaster.py        # Forecast lookups and salary projections
    ├── recommendation.py    # Career recommendation scoring engine
    └── video.py             # Day-in-the-life storyboard builder

Quickstart

  1. Install dependencies (preferably in a virtual environment):

    pip install -r requirements.txt
  2. Run the test suite to validate the behaviour:

    pytest
  3. Launch the API with Uvicorn:

    uvicorn app.main:app --reload

    Once running, open http://127.0.0.1:8000/docs to view a lightweight JSON summary of the available routes.

API overview

Endpoint Method Description
/careers GET List all supported career profiles.
/careers/{career_id} GET Retrieve details for a specific career.
/interview/analyze POST Analyze an interview session and return emotions, engagement, and interest signals.
/careers/recommendations POST Run analysis and return the top career matches along with reasoning.
/careers/{career_id}/day-in-life GET Generate a storyboard of scenes that can be rendered into a video.
/careers/{career_id}/forecast GET Fetch job market forecast information.

Sample analysis request

{
  "participant": "Avery",
  "context": "Mock interview for design roles",
  "turns": [
    {
      "question": "Tell us about a project you loved.",
      "answer": "I loved designing a mobile interface, running user interviews, and iterating on the prototype.",
      "metrics": {
        "eye_contact": 0.82,
        "facial_expressiveness": 0.76,
        "gesture_energy": 0.68,
        "vocal_energy": 0.74,
        "verbal_clarity": 0.81,
        "speaking_pace": 0.65,
        "filler_word_rate": 0.18,
        "stress_signals": 0.22
      }
    }
  ]
}

The response highlights per-answer sentiment, engagement scores, and the most relevant careers plus reasoning snippets.

Extending the MVP

  • Plug in real sensors: Replace the heuristic metrics in InterviewMetrics with outputs from actual eye-tracking, facial emotion, or voice analysis libraries.
  • Video generation: Feed the storyboard generated by DayInLifeVideoBuilder into tools such as Runway, Synthesia, or your own animation pipeline to create narrated clips.
  • Expand data coverage: Add new careers by updating app/data/careers.json with keywords, day-in-the-life scenes, and forecast information.

License

This project is provided as an educational MVP. Adapt it to your needs!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages