• this list will be replaced by the toc



  • Removed unused clap button HTML tags
  • Minor style adjustments
  • Updated dependencies


  • Fixed an issue with using featured projects on the welcome layout



  • Removed clap button info box


  • Works with Ruby 3.0
  • Build with Jekyll 4.2.1


  • Fixed theme color issue when using multiple theme colors
  • Fixed UTF-8 characters not rendering correctly in breadcrumbs
  • Fixed empty string warning in resume layout


Version 2.1.0 provides minor design changes, new features, and closes multiple issues:


  • Code blocks now can have headers:
    // file: "hello-world.js"
    console.log('Hello World!');

    To add the headers, simply make the first line a comment of the form file: “dir/filename.ext”

    • Code blocks now have a copy-to-clipboard button
  • Resumes can now have download buttons. resume_download_button Add the following to the front matter. Note that the PDF needs to be pre-generated
    <!-- file: "" -->
    print: true
    pdf: /assets/Resume.pdf
    json: /assets/resume.json
  • Added breadcrumbs paths above page title: last_modified

Note that this requires a directory-like URL pattern like /blog/:categories/:year-:month-:day-:title/.

  • Added “Last modified at” to post layout: last_modified

To enable this feature, the post needs to have a last_modified_at property with a valid date. You can either set it manually in the frontmatter (not recommended), or use the jekyll-last-modified-at plugin to set it for you (Not available on GitHub Pages!).

You can remove this element by setting hide_last_modified in the front matter. You can disable it for all posts by setting hydejack.hide_last_modified in the config file. Setting hydejack.hide_dates will also remove it, together with all other time-related UI elements.

You can customize the hover text, icon, and date format in _data/strings.yml using the following keys: last_modified_at (hover text), last_modified_at_icon (icon name, default: icon-history) and date_formats.last_modified_at (date format, default: %Y-%m-%d).

  • Added Reading Time: last_modified The reading time indicator is a simple script which helps to create a reading indicator displaying the estimated reading time for the content. The script calculates the reading time based on a configurable reading speed (180 words per minutes by default). To display the reading time of an article, the code below is used.
<!-- file: "_includes/reading-time.html" -->
{% capture words %}
{{ content | number_of_words | minus: 180 }}
{% endcapture %}
{% unless words contains '-' %}
{{ words | plus: 180 | divided_by: 180 | append: ' minutes to read' }}
{% endunless %}

Installation :

  • Step 1. Copy the file reading-time.html
  • Step 2. Save the file in the _includes directory of your project
  • Step 3. Add the following line to your layout on the place where you want the reading time indicator to appear:
{% include reading-time.html %}
  • Added option to “invert” / darken the font colors in the sidebar. This enables use of bright sidebar images. Set invert_sidebar: true in the font matter to enable. Use defaults in the config file to enable this for all pages.
  • Added option to configure border radius
  • Added dingbat to page layout
  • Added plain layout that comes without a dingbat
  • Added smaller and larger CSS classes that set the font size to the respective values.
  • Added options to change the file paths to favicon and apple touch icon in the confog file. Use favicon and apple_touch_icon respectively.


  • Added border radius to many elements
  • Modernized table design
  • Setting hydejack.advertise: false will now remove the banner from the HTML and the JavaScript console.
  • Changed the box shadow of cards (projects, posts) to reduce the amount of painting the browser has to do on when mouse hovering them.
  • The layout when using the theme without the no_break_layout setting is now


  • Allow transparent project and post images
  • Removing/leaving out the logo key in the config file will now correctly remove the logo from the sidebar
  • Fixed a bug that caused blog posts to be included the the search even when set to sitemap: false in the front matter.



  • Added Lightbox : Lightbox is a solution that loads your image links, your Youtube links and your Vimeo links automatically in a minimalistic and responsive pseudo window/overlay.
  • Added WebP image format. WebP is a modern image format that provides superior lossless and lossy compression for images on the web.



  • Changed default code font
  • Improved fallback image in dark mode



  • Added button for adding applause / claps / kudos to projects pages and blog-posts.
  • Added Slider / Carousel



  • Fixed image fade in animation for images with srcset
  • Slightly increased size of post and project cards
  • Added page margin to print layout
  • Added reading time indicator to displaying the estimated reading time for the content.
  • Fixed a layout bug in the resume layout when changing the content width in variable
  • Fixed table of contents sticky breakpoint



  • Added Built-In Search Functionality Added built-in search solution, that integrates well with the existing page style and the new navbar. The solution is entirely browser-based which means it even works while offline and doesn’t depend on an 3rd party. The results of the search are surprisingly good, but have only been tested in English

  • Added Table of Contents that is prettier, sticky, and dynamic. Adding a table of contents is part of kramdown However, v2 adds a dynamic version that will stick to the 3rd column on large screens and highlight the current section.

  • Added a scroll-linked navbar that disappears when scrolling down and re-appears when scrolling up.

  • Added grid layout in v2 that mirrors the projects layout, but for posts.

  • Added Image in various sizes depending on available screen width so that no specific size will fit all. Provides an appropriate sizes attribute, the browser can choose the best image from the provided source set.


  • CSS variables are now configurable.
  • Added keys in Resume layout : born, citizenship, and maritalStatus.
  • The projects, resume, and grid layout now make better use of large screens
  • Removed smooth scroll polyfill for Safari/Webkit as it has caused problems with sticky content.
  • Clicking the image in the blog layout will now navigate to the blog post.
  • hy-img has been removed and replaced with browser’s native loading=lazy attribute
  • JavaScript files are now chunked, so that only what is needed is loaded on demand.
  • Updated to Jekyll 4.1


  • Many layouts (projects, resume, home) will now use more space on large screens
  • Headings now appear “oversized” on larger screens and extend to the right end of the screen
  • The base font size is now smaller across screen sizes
  • The content width is now larger across screen sizes
  • The link style has been changed to make picking accent colors easier for dark mode.
  • The navbar buttons made to look more like buttons
  • Dark mode colors have been toned down a bit
  • Improved dark mode text rendering on macOS
  • Changed the style of footnote links on small screens to make them easier to click.
  • Updated print resume style
  • Slightly decreased size of dark mode icon
  • Changed icons
  • Changed sidebar background
  • Slightly adjusted dark mode colors


  • Horizontal scrolling on a code block, math black, or table can no longer accidentally open the drawer.
  • The client-side scripts are now more robust to missing HTML elements.
  • Fixed back button not showing when opening in standalone mode for the first time.
  • The menu icon is now hidden when the drawer is disabled.


  • Adding Table of Contents
  • Adding Top load Bar
  • Adding Back Progress Bar
  • Adding categories & tags
  • Fixed Gallery view


  • Adding shared on function to share post
  • Adding share-buttons.html layout
  • Optimezed pictures


  • Adding gallery layout.
  • Adding warning icon
  • Change name rules for .md and img files.


  • First realase build with hydejack v8.4.0
  • Adding Search function (lunr.js)
  • Adding Gallery function
  • Adding chat with crisp chat
  • Adding gallerry-index layout.
  • Adding search layout.
  • Connecting to Discus
  • Connecting to Tinyletter
  • Upgrading resume layout.
  • Upgrading dependencies