JSON Résumé — це специфікація, створена для структурування даних резюме. Використовуючи цю специфікацію, ви можете написати своє резюме в структурованому форматі та експортувати його в інші формати. Бібліотека PHP Résumé, розроблена Стівом МакДугалом, забезпечує типобезпечний спосіб створення та роботи з резюме, дотримуючись схеми JSON Résumé.
{
"basics": {
"name": "Люк Скайуокер",
"label": "Рицар-джедай",
"image": "",
"email": "luke.skywalker@rebellion.org",
"phone": "(555) FORCE-1",
"url": "https://jediarchives.org/luke-skywalker",
"summary": "Фермер, який став Рицарем-джедаєм, відіграв ключову роль у перемозі над Галактичною Імперією. Досвідчений пілот, чутливий до Сили та лідер в Резистансі. Вірний відновленню миру й справедливості в галактиці.",
"location": {
"address": "Оселя Ларса",
"postalCode": "N/A",
"city": "Анкорхед",
"countryCode": "N/A",
"region": "Татуїн"
},
"profiles": [{
"network": "HoloNet",
"username": "farmboy_jedi",
"url": "https://holonet.gov/luke-skywalker"
}]
},
"work": [{
"name": "Резистанс",
"position": "Командир",
"url": "https://rebellion.org",
"startDate": "0000-05-25",
"endDate": "0004-05-04",
"summary": "Ключовий військовий лідер у боротьбі проти Галактичної Імперії, спеціалізується на операціях зі зірковими винищувачами та спеціальних місіях.",
"highlights": [
"Знищив першу зірку смерті",
"Очолив Загін Опору",
"Долучився до перемоги над імператором Палпатином"
]
}],
"education": [{
"institution": "Академія навчання джедаїв на Дагобі",
"url": "https://jediarchives.org/dagobah",
"area": "Вивчення Сили та бою на світлових мечах",
"studyType": "Навчання джедаїв",
"startDate": "0003-01-01",
"endDate": "0004-01-01",
"score": "Рицар-джедай",
"courses": [
"Розвиток чутливості до Сили",
"Форми бою на світлових мечах",
"Філософія та етика джедаїв"
]
}],
"certificates": [{
"name": "Сертифікація Рицаря-джедая",
"date": "0004-05-04",
"issuer": "Майстер Йода",
"url": "https://jediarchives.org/certifications"
}],
"skills": [{
"name": "Сили",
"level": "Майстер",
"keywords": [
"Телепатія",
"Ментальний трюк",
"Передбачення",
"Бій на світлових мечах"
]
}],
"references": [{
"name": "Майстер Йода",
"reference": "Сильний із Силою, молодий Скайуокер є. Терплячим і мудрим став. Справжній Рицар-джедай, баланс відновив. Гордий я ним."
}]
}
Існують також ключі для представлення interests
, publications
, awards
, volunteer
, languages
та projects
. Перегляньте повний приклад схеми.
Ви можете встановити пакет через Composer:
composer require juststeveking/resume-php
А щоб створити базове резюме, використовуйте:
use JustSteveKing\Resume\Builders\ResumeBuilder;
use JustSteveKing\Resume\DataObjects\Basics;
use JustSteveKing\Resume\DataObjects\Location;
use JustSteveKing\Resume\DataObjects\Profile;
use JustSteveKing\Resume\DataObjects\Work;
use JustSteveKing\Resume\Enums\Network;
// Створення секції основних даних
$basics = new Basics(
name: 'Люк Скайуокер',
label: 'Рицар-джедай',
email: 'luke.skywalker@rebellion.org',
url: 'https://jediarchives.org/luke-skywalker',
summary: 'Фермер, який став Рицарем-джедаям, відіграв ключову роль у перемозі над Галактичною Імперією. Досвідчений пілот, чутливий до Сили та лідер в Резистансі. Вірний відновленню миру й справедливості в галактиці.',
location: new Location(
address: 'Оселя Ларса',
postalCode: 'N/A',
city: 'Анкорхед',
countryCode: 'N/A',
region: 'Татуїн',
),
profiles: [
new Profile(Network::GitHub, 'luke_skywalker', 'https://github.com/luke_skywalker'),
new Profile(Network::LinkedIn, 'luke_skywalker', 'https://linkedin.com/in/luke_skywalker'),
],
);
// Створення резюме
$resume = (new ResumeBuilder())
->basics($basics)
->addWork(new Work(
name: 'Резистанс',
position: 'Командир',
startDate: '0000-05-25',
endDate: '0004-05-04',
summary: 'Ключовий військовий лідер у боротьбі проти Галактичної Імперії, спеціалізується на операціях зі зірковими винищувачами та спеціальних місіях.',
highlights: ['Знищив першу зірку смерті', 'Очолив Загін Опору', 'Долучився до перемоги над імператором Палпатином'],
))
->build();
// Конвертація у JSON
$json = json_encode($resume, JSON_PRETTY_PRINT);
Цей пакет також надає метод для перетворення вашого резюме в формат JSON-LD за допомогою методу toJsonLd()
, що ідеально підходить для структурування даних, які легко сприймаються пошуковими системами та веб-сервісами. Також можна експортувати в Markdown за допомогою toMarkdown()
.
$resume->toJsonLd();
$resume->toMarkdown();
Також є JobDescriptionBuilder
для створення структурованих описів вакансій відповідно до схеми опису професій JSON.
Дізнайтеся більше про цей пакет та перегляньте вихідний код на GitHub.