mirror of
https://github.com/adam-benyekkou/my_portfolio.git
synced 2026-01-15 20:20:09 +00:00
Added the json files for education experience interets and traits for future use in dataservice
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"id": "developer-training",
|
||||
"title": "DEVELOPER_TRAINING.EXE",
|
||||
"classification": "Concepteur Développeur d'Applications (RNCP Level BAC+4)",
|
||||
"objective": "Intensive full-stack development program focusing on modern web technologies including TypeScript, Node.js, and contemporary development frameworks. Building comprehensive skills in both frontend and backend development.",
|
||||
"timeline": "École O'clock | January 2025 - October 2025",
|
||||
"techStack": [
|
||||
"TYPESCRIPT",
|
||||
"NODE.JS",
|
||||
"FULL_STACK",
|
||||
"WEB_FRAMEWORKS"
|
||||
],
|
||||
"status": "current",
|
||||
"statusLabel": "ACTIVE | IN_PROGRESS",
|
||||
"isCurrent": true
|
||||
}
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
[
|
||||
{
|
||||
"id": "senior-specialist",
|
||||
"title": "PYTHON_API_SPECIALIST.EXE",
|
||||
"classification": "Python & Django API/RPA Specialist",
|
||||
"objective": "Specialized in Python/Django development for API automation and RPA processes. Led technical interventions for complex enterprise HR system integrations, developing robust solutions that bridge business requirements with technical implementation.",
|
||||
"timeline": "UKG | January 2024 - January 2025",
|
||||
"techStack": ["PYTHON", "DJANGO", "API", "RPA"],
|
||||
"status": "completed",
|
||||
"statusLabel": "ARCHIVED | SME_SPECIALIST"
|
||||
},
|
||||
{
|
||||
"id": "specialist-ii",
|
||||
"title": "SYSTEMS_INTEGRATION_SME.EXE",
|
||||
"classification": "Enterprise Systems Integration",
|
||||
"objective": "Subject Matter Expert (SME) for enterprise HRSD connectors and system integrations. Specialized in complex technical challenges involving API development, RPA automation, and SFTP protocols. Provided BI support and data visualization solutions.",
|
||||
"timeline": "UKG | January 2023 - January 2024",
|
||||
"techStack": ["PYTHON", "DJANGO", "API", "RPA"],
|
||||
"status": "completed",
|
||||
"statusLabel": "ARCHIVED | SME_SPECIALIST"
|
||||
},
|
||||
{
|
||||
"id": "specialist",
|
||||
"title": "SOLUTION_SUPPORT.EXE",
|
||||
"classification": "B2B Solution Support",
|
||||
"objective": "Delivered high-level technical support for VIP business clients using HRSD solutions. Developed expertise in SaaS platforms and enterprise decision-making processes while managing critical client relationships.",
|
||||
"timeline": "UKG | October 2021 - January 2023",
|
||||
"techStack": ["SAAS", "HRSD", "CLIENT_MGMT"],
|
||||
"status": "completed",
|
||||
"statusLabel": "ARCHIVED | VIP_TIER"
|
||||
},
|
||||
{
|
||||
"id": "technician",
|
||||
"title": "IT_TECHNICIAN.EXE",
|
||||
"classification": "Information Technology Technician",
|
||||
"objective": "Provided VIP end-user support, managed hardware/software deployments, and implemented networking and information security practices in a mission-critical environment.",
|
||||
"timeline": "Armée de Terre | July 2018 - December 2018",
|
||||
"techStack": ["NETWORKING", "SECURITY", "DEPLOYMENT"],
|
||||
"status": "completed",
|
||||
"statusLabel": "ARCHIVED | MILITARY"
|
||||
}
|
||||
]
|
||||
|
||||
14
assets/data/interests.json
Normal file
14
assets/data/interests.json
Normal file
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"label": "READINGS",
|
||||
"value": "Science Fiction, Philosophy, Fantasy"
|
||||
},
|
||||
{
|
||||
"label": "INTERESTS",
|
||||
"value": "Digital & Tabletop Games, Hiking, Drawing"
|
||||
},
|
||||
{
|
||||
"label": "PETS",
|
||||
"value": "Proud Dad of 6 Guinea Pigs (You read right!)"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,8 @@
|
||||
[
|
||||
"CURIOUS",
|
||||
"PERSISTENT",
|
||||
"ANALYTICAL",
|
||||
"CREATIVE",
|
||||
"ADAPTIVE",
|
||||
"SELF-LEARNER"
|
||||
]
|
||||
|
||||
@@ -19,55 +19,32 @@ export class DataService {
|
||||
readonly skills = this._skills.asReadonly();
|
||||
|
||||
constructor() {
|
||||
console.log('DataService initialized');
|
||||
this.loadInitialData();
|
||||
}
|
||||
|
||||
private async loadInitialData(): Promise<void> {
|
||||
try {
|
||||
console.log('Starting to load data...');
|
||||
const [projects, skills] = await Promise.all([
|
||||
this.fetchProjects(),
|
||||
this.fetchSkills(),
|
||||
]);
|
||||
|
||||
console.log('Projects loaded successfully:', projects);
|
||||
console.log('Skills loaded successfully:', skills);
|
||||
console.log('Number of projects:', projects.length);
|
||||
console.log('Number of skills:', skills.length);
|
||||
|
||||
this._projects.set(projects);
|
||||
this._skills.set(skills);
|
||||
console.log('All data signals updated');
|
||||
} catch (error) {
|
||||
console.error('Error loading data:', error);
|
||||
}
|
||||
}
|
||||
|
||||
private async fetchProjects(): Promise<Project[]> {
|
||||
console.log('Fetching projects from data/projects.json');
|
||||
const result = await firstValueFrom(
|
||||
this.http.get<Project[]>('data/projects.json'),
|
||||
);
|
||||
console.log('Projects HTTP request completed:', result);
|
||||
return result;
|
||||
return firstValueFrom(this.http.get<Project[]>('data/projects.json'));
|
||||
}
|
||||
|
||||
private async fetchSkills(): Promise<NeuralProfileNode[]> {
|
||||
console.log('Fetching skills from data/skilltree.json');
|
||||
const result = await firstValueFrom(
|
||||
this.http.get<NeuralProfileNode[] | NeuralProfileNode>(
|
||||
'data/skilltree.json',
|
||||
),
|
||||
this.http.get<NeuralProfileNode>('data/skilltree.json'),
|
||||
);
|
||||
console.log('Skills HTTP request completed:', result);
|
||||
|
||||
// If the JSON contains a single object instead of an array, wrap it in an array
|
||||
if (result && !Array.isArray(result)) {
|
||||
console.log('Converting single skill object to array');
|
||||
return [result as NeuralProfileNode];
|
||||
}
|
||||
|
||||
return Array.isArray(result) ? result : [];
|
||||
return [result];
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user