Полный перенос дизайна и текстов из макета: oklch-палитра, Google Fonts
Заменил приблизительную hex-палитру на настоящие oklch()-цвета из
макета, подключил JetBrains Mono через Google Fonts (обновил CSP:
style-src/font-src для fonts.googleapis.com/fonts.gstatic.com).
Секция "обо мне" резюме — без term-window, плоские абзацы; опыт работы
в формате период/роль/компания·город + буллеты с тире; контакты в виде
label+value, как в макете. Карточки проектов — без бара с точками,
header-строка "drwxr-xr-x {name}" + ссылка справа, как в Projects.dc.html.
matrix-rain.js переписан по алгоритму из макета (shadowBlur на "голове"
капли, katakana-набор символов, накопительное падение). Градиент
глубины поверх дождя взял по факту темнее, чем в инлайн-стилях макета
(0.72–0.96 давал почти невидимый дождь) — подобрал по референс-скриншоту
макета (0.35–0.6), а не по сырым числам.
This commit is contained in:
+7
-11
@@ -178,9 +178,10 @@ function renderExperience(list) {
|
||||
.map(
|
||||
(job) => `
|
||||
<li class="timeline-item">
|
||||
<div class="timeline-item__meta">${job.period} · ${job.duration} · ${job.location}</div>
|
||||
<h3 class="timeline-item__role">${job.role} — ${job.company}</h3>
|
||||
<ul>${job.bullets.map((b) => `<li>${b}</li>`).join('')}</ul>
|
||||
<div class="timeline-item__meta">${job.period} · ${job.duration}</div>
|
||||
<h3 class="timeline-item__role">${job.role}</h3>
|
||||
<div class="timeline-item__company">${job.company} · ${job.location}</div>
|
||||
<ul>${job.bullets.map((b) => `<li><span class="dash">-</span><span>${b}</span></li>`).join('')}</ul>
|
||||
</li>`
|
||||
)
|
||||
.join('');
|
||||
@@ -229,12 +230,7 @@ function render() {
|
||||
|
||||
<section class="about">
|
||||
<h2 class="section-heading"><span class="section-heading__num">01</span>${t.aboutHeading}</h2>
|
||||
<div class="term-window">
|
||||
<div class="term-window__bar"><span></span><span></span><span></span></div>
|
||||
<div class="term-window__body">
|
||||
${t.about.map((p) => `<p>${p}</p>`).join('')}
|
||||
</div>
|
||||
</div>
|
||||
${t.about.map((p) => `<p>${p}</p>`).join('')}
|
||||
</section>
|
||||
|
||||
<section class="experience">
|
||||
@@ -255,8 +251,8 @@ function render() {
|
||||
<section class="contact">
|
||||
<h2 class="section-heading"><span class="section-heading__num">05</span>${t.contactHeading}</h2>
|
||||
<ul class="contact-list">
|
||||
<li><a href="mailto:${t.contact.email}">${t.contact.email}</a></li>
|
||||
<li><a href="${t.contact.telegramUrl}">${t.contact.telegram}</a></li>
|
||||
<li><span class="contact-list__label">email</span><a href="mailto:${t.contact.email}">${t.contact.email}</a></li>
|
||||
<li><span class="contact-list__label">telegram</span><a href="${t.contact.telegramUrl}">${t.contact.telegram}</a></li>
|
||||
</ul>
|
||||
</section>`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user