This commit is contained in:
2026-07-16 12:28:42 +03:00
parent e1f7c33692
commit 512a54ba2d
13 changed files with 87 additions and 31 deletions
+8
View File
@@ -46,7 +46,15 @@
letter-spacing: 0.02em;
a {
display: inline-flex;
align-items: center;
gap: 0.4rem;
color: var(--text-muted);
transition: var(--transition-smooth);
svg {
flex-shrink: 0;
}
&:hover {
color: var(--accent-color);
+5 -5
View File
@@ -1,15 +1,15 @@
{% extends "base.html" %}
{% block title %}404 — Document Not Found | {{ config.title }}{% endblock title %}
{% block description %}The page you requested could not be found.{% endblock description %}
{% block title %}404 — {{ config.extra.notfound_title | default(value="Document Not Found") }} | {{ config.title }}{% endblock title %}
{% block description %}{{ config.extra.notfound_body | default(value="The page you requested could not be found.") }}{% endblock description %}
{% block content %}
<div class="notfound-wrap">
<div class="case-notice">
<p class="case-notice-ref">STATUS: NOT FOUND</p>
<h1 class="case-notice-title">Document Not Found</h1>
<p class="case-notice-ref">{{ config.extra.notfound_status | default(value="Status: Not Found") }}</p>
<h1 class="case-notice-title">{{ config.extra.notfound_title | default(value="Document Not Found") }}</h1>
<p class="case-notice-body">
This page couldn't be located in the archive. It may have been moved, renamed, or never filed.
{{ config.extra.notfound_body | default(value="This page couldn't be located in the archive. It may have been moved, renamed, or never filed.") }}
</p>
<div class="case-notice-links">
<a href="{{ get_url(path="") }}">Home</a>
+1 -1
View File
@@ -2,7 +2,7 @@
%} {% block content %}
<div class="post-detail">
<header class="post-header list-page-header">
<h1 class="post-title list-page-title">Archive</h1>
<h1 class="post-title list-page-title">{{ config.extra.archive_page_title | default(value="Archive") }}</h1>
</header>
<div class="archive-list">
+1 -1
View File
@@ -31,7 +31,7 @@ block og_url %}{{ config.base_url }}/{% endblock og_url %} {% block head %}
{% endblock head %} {% block content %} {% include "partials/profile.html" %}
{% set section = get_section(path="posts/_index.md") %}
<h2 class="feed-heading">Latest</h2>
<h2 class="feed-heading">{{ config.extra.homepage_feed_heading | default(value="Latest") }}</h2>
<div class="post-feed-list">
{% set post_limit = config.extra.homepage_post_limit | default(value=3) %}
+2 -2
View File
@@ -2,14 +2,14 @@
<nav class="post-nav" aria-label="Post navigation">
{% if page.higher %}
<a class="post-nav-link post-nav-prev hover-scale" href="{{ page.higher.permalink }}">
<span class="post-nav-label">&larr; Previous</span>
<span class="post-nav-label">&larr; {{ config.extra.post_nav_prev_label | default(value="Previous") }}</span>
<span class="post-nav-title">{{ page.higher.title }}</span>
</a>
{% endif %}
{% if page.lower %}
<a class="post-nav-link post-nav-next hover-scale" href="{{ page.lower.permalink }}">
<span class="post-nav-label">Next &rarr;</span>
<span class="post-nav-label">{{ config.extra.post_nav_next_label | default(value="Next") }} &rarr;</span>
<span class="post-nav-title">{{ page.lower.title }}</span>
</a>
{% endif %}
+36 -6
View File
@@ -5,12 +5,42 @@
<p class="hero-subtitle">{{ config.description }}</p>
<div class="masthead-links">
{% if config.extra.github_url %}<a href="{{ config.extra.github_url }}" target="_blank" rel="noopener noreferrer">GitHub</a>{% endif %}
{% if config.extra.twitter_url %}<a href="{{ config.extra.twitter_url }}" target="_blank" rel="noopener noreferrer">Twitter</a>{% endif %}
{% if config.extra.youtube_url %}<a href="{{ config.extra.youtube_url }}" target="_blank" rel="noopener noreferrer">YouTube</a>{% endif %}
{% if config.extra.linkedin_url %}<a href="{{ config.extra.linkedin_url }}" target="_blank" rel="noopener noreferrer">LinkedIn</a>{% endif %}
{% if config.extra.email %}<a href="mailto:{{ config.extra.email }}">Email</a>{% endif %}
{% if config.extra.show_rss_link %}<a href="{{ get_url(path="rss.xml") }}">RSS</a>{% endif %}
{% if config.extra.github_url %}
<a href="{{ config.extra.github_url }}" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="16" height="16" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg>
<span>GitHub</span>
</a>
{% endif %}
{% if config.extra.twitter_url %}
<a href="{{ config.extra.twitter_url }}" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="14" height="14" fill="currentColor"><path d="M14.234 10.162 22.977 0h-2.072l-7.591 8.824L7.251 0H.258l9.168 13.343L.258 24H2.33l8.016-9.318L16.749 24h6.993zm-2.837 3.299-.929-1.329L3.076 1.56h3.182l5.965 8.532.929 1.329 7.754 11.09h-3.182z"></path></svg>
<span>Twitter</span>
</a>
{% endif %}
{% if config.extra.youtube_url %}
<a href="{{ config.extra.youtube_url }}" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.42a2.78 2.78 0 0 0-1.94 2C1 8.13 1 12 1 12s0 3.87.46 5.58a2.78 2.78 0 0 0 1.94 2C5.12 20 12 20 12 20s6.88 0 8.6-.42a2.78 2.78 0 0 0 1.94-2C23 15.87 23 12 23 12s0-3.87-.46-5.58z"></path><polygon points="9.75 15.02 15.5 12 9.75 8.98 9.75 15.02" fill="var(--bg-color)"></polygon></svg>
<span>YouTube</span>
</a>
{% endif %}
{% if config.extra.linkedin_url %}
<a href="{{ config.extra.linkedin_url }}" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect x="2" y="9" width="4" height="12"></rect><circle cx="4" cy="4" r="2"></circle></svg>
<span>LinkedIn</span>
</a>
{% endif %}
{% if config.extra.email %}
<a href="mailto:{{ config.extra.email }}">
<svg viewBox="0 0 24 24" width="16" height="16" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>
<span>Email</span>
</a>
{% endif %}
{% if config.extra.show_rss_link %}
<a href="{{ get_url(path="rss.xml") }}">
<svg viewBox="0 0 24 24" width="16" height="16" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle></svg>
<span>RSS</span>
</a>
{% endif %}
</div>
</div>
{% endif %}
+1 -1
View File
@@ -11,7 +11,7 @@
<div class="series-nav" aria-label="Post series: {{ page.extra.series }}">
<div class="series-nav-header">
<span class="series-nav-eyebrow">Series</span>
<span class="series-nav-eyebrow">{{ config.extra.series_label | default(value="Series") }}</span>
<span class="series-nav-title">{{ page.extra.series }}</span>
<span class="series-nav-badge">{{ page.extra.series_index }} / {{ series_total }}</span>
</div>
+1 -1
View File
@@ -1,5 +1,5 @@
<div class="social-share">
<span class="share-label">Share:</span>
<span class="share-label">{{ config.extra.share_label | default(value="Share:") }}</span>
<a
href="https://twitter.com/intent/tweet?text={{ page.title | urlencode }}&url={{ page.permalink | urlencode }}"
target="_blank"
+1 -1
View File
@@ -1,7 +1,7 @@
{% if page.toc %}
<aside class="post-toc-sidebar" aria-label="Table of contents">
<nav class="toc-nav">
<h2 class="toc-sidebar-title">Contents</h2>
<h2 class="toc-sidebar-title">{{ config.extra.toc_sidebar_title | default(value="Contents") }}</h2>
<ul>
{% for h1 in page.toc %}
<li>
+1 -1
View File
@@ -1,6 +1,6 @@
{% if page.toc %}
<details class="post-toc">
<summary>Table of Contents</summary>
<summary>{{ config.extra.toc_title | default(value="Table of Contents") }}</summary>
<ul>
{% for h1 in page.toc %}
<li>
+10 -10
View File
@@ -1,22 +1,22 @@
{% extends "base.html" %} {% block title %}Posts{% if paginator.current_index > 1 %} — Page {{
{% extends "base.html" %} {% block title %}{{ config.extra.posts_page_title | default(value="Posts") }}{% if paginator.current_index > 1 %} — Page {{
paginator.current_index }}{% endif %} | {{ config.title }}{% endblock title %} {% block description
%}Browse all posts on {{ config.title }} — binary exploitation, reverse engineering, and offensive
security.{% endblock description %} {% block canonical %}{% if paginator.current_index == 1 %}{{
%}{{ config.extra.posts_page_subtitle | default(value="Exploring binary exploitation, reverse engineering, and offensive security.") }}{% endblock description %} {% block canonical %}{% if paginator.current_index == 1 %}{{
config.base_url }}/posts/{% else %}{{ paginator.first }}page/{{ paginator.current_index }}/{% endif
%}{% endblock canonical %} {% block og_title %}Posts{% if paginator.current_index > 1 %} — Page {{
%}{% endblock canonical %} {% block og_title %}{{ config.extra.posts_page_title | default(value="Posts") }}{% if paginator.current_index > 1 %} — Page {{
paginator.current_index }}{% endif %} | {{ config.title }}{% endblock og_title %} {% block
og_description %}Browse all posts on {{ config.title }} — binary exploitation, reverse engineering,
and offensive security.{% endblock og_description %} {% block og_url %}{% if paginator.current_index
og_description %}{{ config.extra.posts_page_subtitle | default(value="Exploring binary exploitation, reverse engineering, and offensive security.") }}{% endblock og_description %} {% block og_url %}{% if paginator.current_index
== 1 %}{{ config.base_url }}/posts/{% else %}{{ paginator.first }}page/{{ paginator.current_index
}}/{% endif %}{% endblock og_url %} {% block head %}
{% set posts_page_title = config.extra.posts_page_title | default(value="Posts") %}
{% set posts_page_subtitle = config.extra.posts_page_subtitle | default(value="Exploring binary exploitation, reverse engineering, and offensive security.") %}
<!-- SEO: CollectionPage JSON-LD -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "CollectionPage",
"@id": "{{ config.base_url }}/posts/#collection",
"name": "Posts | {{ config.title }}",
"description": "Browse all posts on {{ config.title }}",
"name": "{{ posts_page_title }} | {{ config.title }}",
"description": {{ posts_page_subtitle | json_encode }},
"url": "{{ config.base_url }}/posts/",
"inLanguage": "en-US",
"isPartOf": {
@@ -44,9 +44,9 @@ block content %}
<div class="feed-page">
<div class="hero hero-compact">
<div class="hero-content">
<h1 class="hero-title">Posts</h1>
<h1 class="hero-title">{{ config.extra.posts_page_title | default(value="Posts") }}</h1>
<p class="hero-subtitle">
Exploring binary exploitation, reverse engineering, and offensive security.
{{ config.extra.posts_page_subtitle | default(value="Exploring binary exploitation, reverse engineering, and offensive security.") }}
</p>
</div>
</div>
+1 -1
View File
@@ -20,7 +20,7 @@ og_description %} {% block og_url %}{{ config.base_url }}/tags/{% endblock og_ur
{% endblock head %} {% block content %}
<div class="tags-page">
<header class="page-header tags-page-header">
<h1 class="page-title">All Tags</h1>
<h1 class="page-title">{{ config.extra.tags_page_title | default(value="All Tags") }}</h1>
</header>
<div class="tags-container">
+18
View File
@@ -70,6 +70,7 @@ twitter_handle = "@andwati_"
# Homepage
homepage_post_limit = 3
homepage_feed_heading = "Latest"
view_all_posts_label = "View all posts"
# Related posts
@@ -78,3 +79,20 @@ related_posts_title = "Related Posts"
# Search
search_placeholder = "Search posts..."
# Page copy
posts_page_title = "Posts"
posts_page_subtitle = "Exploring binary exploitation, reverse engineering, and offensive security."
archive_page_title = "Archive"
tags_page_title = "All Tags"
toc_title = "Table of Contents"
toc_sidebar_title = "Contents"
series_label = "Series"
post_nav_prev_label = "Previous"
post_nav_next_label = "Next"
share_label = "Share:"
# 404 page
notfound_status = "Status: Not Found"
notfound_title = "Document Not Found"
notfound_body = "This page couldn't be located in the archive. It may have been moved, renamed, or never filed."