Skip to content

Tawe/careersignals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Career Signals API

An AI-powered career analysis API that turns unstructured resume and job description text into structured, explainable signals: skill scores, leadership indicators, role fit assessments, and narrative themes.

Built on Xano using XanoScript.


What It Does

Career Signals accepts raw career data (resume text, LinkedIn-style profiles, job descriptions) and returns normalized, scored signals with explanations. Every score includes a "why", not just a number.

Signals produced:

Category Signals
Skill & Seniority breadth score, depth score, primary domains, seniority band, specialization archetype
Leadership people leadership, technical leadership, delivery ownership, cross-functional collaboration, mentorship
Role Fit overall fit, skills alignment, domain alignment, seniority alignment, green/red flags
Risk & Story job hopping risk, career gaps, tech stagnation, buzzword density, narrative themes

API Endpoints

All endpoints require Authorization: Bearer <API_KEY>.

Method Path Description
POST /v1/analyze/profile Analyze a resume or profile
POST /v1/analyze/role-fit Score fit between a profile and a job description
POST /v1/suggest/bullets Generate tailored resume bullet points

See SPEC.md for full request/response schemas.


Architecture

AI layer: LLMs extract skills, infer leadership signals, identify risk factors, and generate explanations and bullets.

Xano business logic: normalizes AI output, maps domains, computes scores, enforces bounds, applies role-fit weightings.

Client → API Key Auth → Rate Limit Check → AI Analysis → Normalization & Scoring → Response

Project Structure

apis/          # API endpoint definitions
  authentication/
  career/        # /v1/analyze/* and /v1/suggest/* endpoints
  event_logs/
  members_accounts/

functions/     # Reusable XanoScript functions
  career_signals/
    analyze_profile_with_ai.xs
    analyze_role_fit_with_ai.xs
    calculate_skill_breadth_score.xs
    calculate_skill_depth_score.xs
    calculate_role_fit_score.xs
    normalize_profile_signals.xs
    generate_bullets_with_ai.xs
    authenticate_api_client.xs
    check_rate_limit.xs
    format_error_response.xs

tables/        # Database schema
  api_client.xs
  analysis.xs
  request_log.xs
  agent_conversation.xs
  agent_message.xs
  event_log.xs

tools/         # AI agent tools
tasks/         # Scheduled tasks
docs/          # XanoScript development guidelines

Scoring

Role fit is a weighted composite:

overall_fit = (skills × 0.5) + (domain × 0.2) + (seniority × 0.2) + (leadership × 0.1)

Weights are configurable per request via options.weightings.

Skill breadth uses diminishing returns on domain count: <20 narrow, 40–60 balanced, ~80 broad.

Skill depth weights tenure, increasing responsibility, architecture involvement, and recency.


Security

  • HTTPS only
  • API keys hashed at rest
  • Per-client rate limits
  • Minimal PII logging (hashed IPs, optional input anonymization)
  • No external model training on submitted data

Development

This project uses XanoScript. See CLAUDE.md for the development workflow and links to documentation for tables, functions, APIs, agents, and tools.


Status

MVP - see SPEC.md for planned future enhancements (batch analysis, multi-language support, salary benchmarking, interview question generation).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages