Ever since the introduction of Dark Mode, link styles have been a bit of an issue. Specifically, finding an accent color that worked on both light and dark backgrounds was the problem. With Hydejack 9, the link style has been revamped so that legibility is no longer tied to the choice of accent_color, giving you much more freedom in creating a unique design flavor for your site.
Ready for the Big Screen
The theme on which Hydejack is based was designed for a different era of the web. Hydejack has inherited many of its limitations, but over time I’ve made adjustments, such as centering the content column for better reading ergonomics.
With version 9, Hydejack takes full advantage of large displays. Whether it’s design indulgences such as oversized headlines, or quality of life improvements such as a floating table of contents, Hydejack now finds use for all that extra screen real estate1.
What’s in the Cards?
Hydejack 9 now lets you use content cards for both projects and posts. The cards have been redesigned with a new hover style and drop shadows and they retain their unique transition-to-next-page animations, which now also work on the blog layout. The new grid layout lets you do that.
Good images are key to making the most out of content cards. For that reason, a chapter on images has been added to the documentation.
Built-In Search
Hydejack now has Built-In Search. It even works offline. I’ve been prototyping many approaches and eventually settled on a fully client-side, off-the-main thread solution that perfectly fits the use case of personal sites and shows surprisingly good results2.
The new search UI is custom made for Hydejack and shows beautiful previews of your posts and pages, right on top of your regular content.
Together with the Auto-Hiding Navbar, your entire content library is now only a couple of keystrokes away.
Auto-Hiding Navbar
A navbar that’s there when you need it, and disappears when you don’t. Simple as that.
Sticky Table of Contents
Already a staple on so many sites on the web, this pattern is now also available in Hydejack. What’s unique about it is that it simply picks up the table of contents already created by kramdown’s {:toc} tag and transparently upgrades it to a fully dynamic version.
…and much more
Other noteworthy changes include:
Support for Jekyll 4
Choice between MathJax and KaTeX for math rendering
Use of jekyll-include-cache for drastically improved page building speeds
New variables configuration file — adjust content width, sidebar width, font size, etc…
…and the option to disable grouping projects by year.
Read the the CHANGELOG for the full scope of features and improvements made in Hydejack 9. Maybe just glance at it to confirm that it is indeed a pretty long list.
Even More to Come
New features for 9.1 are already lined up. Code block headers and code line highlights for even better technical blogging, as well as download buttons on the resume page for PDF, vCard, and Resume JSON are just around the corner.
Get It Now
The Free Version of Hydejack is now availabe on RubyGems and for the first time also on GitHub Packages. The source code is available on GitHub as always.
The PRO Version is scheduled to release on July 7th on Gumroad. Pre-Orders are open now:
If you are a fan of the old two-column layout, or don’t like modern design tropes such as mega headlines, Hydejack lets you revert these changes on a case-by-case basis via configuration options. ↩︎
Search was mainly tested for English and German. Please let me know about issues in other languages. While I’ve tried to find a multi-language solution, most showed drastically worse results for the English base case. If you’re technically inclined, you can adopt the code located in _includes/js/search-worker.js to your needs. ↩︎
A page showing Hydejack-specific markdown content.
Hydejack offers a few additional features to markup your markdown. Don’t worry, these are merely CSS classes added with kramdown’s {:...} syntax, so that your content remains compatible with other Jekyll themes.
Large Tables
Default aligned
Left aligned
Center aligned
Right aligned
Default aligned
Left aligned
Center aligned
Right aligned
Default aligned
Left aligned
Center aligned
Right aligned
Default aligned
Left aligned
Center aligned
Right aligned
First body part
Second cell
Third cell
fourth cell
First body part
Second cell
Third cell
fourth cell
First body part
Second cell
Third cell
fourth cell
First body part
Second cell
Third cell
fourth cell
Second line
foo
strong
baz
Second line
foo
strong
baz
Second line
foo
strong
baz
Second line
foo
strong
baz
Third line
quux
baz
bar
Third line
quux
baz
bar
Third line
quux
baz
bar
Third line
quux
baz
bar
Second body
Second body
Second body
Second body
2 line
2 line
2 line
2 line
Footer row
Footer row
Footer row
Footer row
Code blocks
// Example can be run directly in your JavaScript console// Create a function that takes two arguments and returns the sum of those// argumentsvaradder=newFunction("a","b","return a + b");// Call the functionadder(2,6);// > 8
This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere.
Header 3
This is a blockquote following a header.
When something is important enough, you do it even if the odds are not in your favor.
// Javascript code with syntax highlighting.varfun=functionlang(l){dateformat.i18n=require('./lang/'+l)returntrue;}
# Ruby code with syntax highlightingGitHubPages::Dependencies.gems.eachdo|gem,version|s.add_dependency(gem,"= #{version}")end
Header 4
This is an unordered list following a header.
This is an unordered list following a header.
This is an unordered list following a header.
Header 5
This is an ordered list following a header.
This is an ordered list following a header.
This is an ordered list following a header.
Header 6
head1
head two
three
ok
good swedish fish
nice
out of stock
good and plenty
nice
ok
good oreos
hmm
ok
good zoute drop
yumm
There’s a horizontal rule below this.
Here is an unordered list:
Item foo
Item bar
Item baz
Item zip
And an ordered list:
Item one
Item two
Item three
Item four
And a nested list:
level 1 item
level 2 item
level 2 item
level 3 item
level 3 item
level 1 item
level 2 item
level 2 item
level 2 item
level 1 item
level 2 item
level 2 item
level 1 item
Small image
Large image
Definition lists
Name
Godzilla
Born
1952
Birthplace
Japan
Color
Green
Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. Or is it?
Howdy! This is an example blog post that shows several types of HTML content supported in this theme.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Sed posuere consectetur est at lobortis. Cras mattis consectetur purus sit amet fermentum.
Curabitur blandit tempus porttitor. Nullam quis risus eget urna mollis ornare vel eu leo. Nullam id dolor id nibh ultricies vehicula ut id elit.
Etiam porta sem malesuada magna mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.
Inline HTML elements
HTML defines a long list of available inline tags, a complete list of which can be found on the Mozilla Developer Network.
To bold text, use **To bold text**.
To italicize text, use *To italicize text*.
Abbreviations, like HTML should be defined like this *[HTML]: HyperText Markup Language.
Citations, like — Mark otto, should use <cite>.
Deleted text should use ~~deleted~~ and inserted text should use <ins>.
Superscript text uses <sup> and subscript text uses <sub>.
Most of these elements are styled by browsers with few modifications on our part.
Heading 2
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Heading 3
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Heading 4
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Heading 5
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Heading 6
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Code
Cum sociis natoque penatibus et magnis dis code element montes, nascetur ridiculus mus.
// Example can be run directly in your JavaScript console// Create a function that takes two arguments and returns the sum of those// argumentsvaradder=newFunction("a","b","return a + b");// Call the functionadder(2,6);// > 8
Lists
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et.
Donec id elit non mi porta gravida at eget metus.
Nulla vitae elit libero, a pharetra augue.
Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.
Vestibulum id ligula porta felis euismod semper.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
Maecenas sed diam eget risus varius blandit sit amet non magna.
Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis.
HyperText Markup Language (HTML)
The language used to describe and define the content of a Web page
Cascading Style Sheets (CSS)
Used to describe the appearance of Web content
JavaScript (JS)
The programming language used to build advanced Web sites and applications
Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Nullam quis risus eget urna mollis ornare vel eu leo.
Images
Quisque consequat sapien eget quam rhoncus, sit amet laoreet diam tempus. Aliquam aliquam metus erat, a pulvinar turpis suscipit at.
Tables
Aenean lacinia bibendum nulla sed consectetur. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Name
Upvotes
Downvotes
Alice
10
11
Bob
4
3
Charlie
7
9
Totals
21
23
Nullam id dolor id nibh ultricies vehicula ut id elit. Sed posuere consectetur est at lobortis. Nullam quis risus eget urna mollis ornare vel eu leo.