careercompass / src /core /models.py
karthikcr's picture
Initial deployment of CareerCompass
403ebf9
Raw
History Blame Contribute Delete
945 Bytes
from typing import List, Optional, Dict, Any
from pydantic import BaseModel, Field
class ProfileData(BaseModel):
"""Structured LinkedIn profile data"""
full_name: Optional[str] = None
headline: Optional[str] = None
about: Optional[str] = None
location: Optional[str] = None # Added based on scraper output
profile_url: Optional[str] = None # Added based on scraper output
experience: List[Dict[str, Any]] = Field(default_factory=list)
education: List[Dict[str, Any]] = Field(default_factory=list)
skills: List[str] = Field(default_factory=list)
recommendations: List[Dict[str, Any]] = Field(default_factory=list)
accomplishments: List[Dict[str, Any]] = Field(default_factory=list) # Added based on scraper output
raw_data: Dict[str, Any] = Field(default_factory=dict)
class Config:
arbitrary_types_allowed = True
# Add other core, reusable data models here if needed in the future.