Github Pages 블로그 (1) - hydejack 테마 적용하고 실행하기
github pages와 jekyll 이용해서 블로그 만들기, hydejack 테마 사용하기
예전에 만들다가 말았던 기술 블로그를 다시 만들어 보기로 했다.
일단 ruby, bundler 다 세팅된 상태 (여튼 로컬에서도 띄워봐야 하므로,, 대충 ruby 깔았음)
github pages와 jekyll 이용해서 블로그 만들기, hydejack 테마 사용하기
예전에 만들다가 말았던 기술 블로그를 다시 만들어 보기로 했다.
일단 ruby, bundler 다 세팅된 상태 (여튼 로컬에서도 띄워봐야 하므로,, 대충 ruby 깔았음)
Version 9 is the most complete version of Hydejack yet. Modernized design, big headlines, and big new features.
Version 9 is the most complete version of Hydejack yet.
Modernized design, big headlines, big new features: Built-In Search, Sticky Table of Contents, and Auto-Hiding Navbar. That and more is Hydejack 9.
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.
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.
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.
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.
A navbar that’s there when you need it, and disappears when you don’t. Simple as that.
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.
Other noteworthy changes include:
jekyll-include-cache
for drastically improved page building speedsRead 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.
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.
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.
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 |
// Example can be run directly in your JavaScript console
// Create a function that takes two arguments and returns the sum of those
// arguments
var adder = new Function("a", "b", "return a + b");
// Call the function
adder(2, 6);
// > 8
Lorem ipsum \(f(x) = x^2\). \[\begin{aligned} \phi(x,y) &= \phi \left(\sum_{i=1}^n x_ie_i, \sum_{j=1}^n y_je_j \right) \\[2em] &= \sum_{i=1}^n \sum_{j=1}^n x_i y_j \phi(e_i, e_j) \\[2em] &= (x_1, \ldots, x_n) \left(\begin{array}{ccc} \phi(e_1, e_1) & \cdots & \phi(e_1, e_n) \\ \vdots & \ddots & \vdots \\ \phi(e_n, e_1) & \cdots & \phi(e_n, e_n) \end{array}\right) \left(\begin{array}{c} y_1 \\ \vdots \\ y_n \end{array}\right) \end{aligned}\]
You can add large text.
A caption to an image.
You can make a quote “pop out”.
I’m faded, faded, faded.
A page showing how regular markdown content is styled in Hydejack.
There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project.
There should be whitespace between paragraphs.
Text can be bold, italic, or strikethrough.
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.
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.
var fun = function lang(l) {
dateformat.i18n = require('./lang/' + l)
return true;
}
# Ruby code with syntax highlighting
GitHubPages::Dependencies.gems.each do |gem, version|
s.add_dependency(gem, "= #{version}")
end
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 |
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?
The final element.
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.
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**
.*To italicize text*
.*[HTML]: HyperText Markup Language
.<cite>
.~~deleted~~
and inserted text should use <ins>
.<sup>
and subscript text uses <sub>
.Most of these elements are styled by browsers with few modifications on our part.
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.
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor.
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
// arguments
var adder = new Function("a", "b", "return a + b");
// Call the function
adder(2, 6);
// > 8
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.
Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.
Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis.
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.
Quisque consequat sapien eget quam rhoncus, sit amet laoreet diam tempus. Aliquam aliquam metus erat, a pulvinar turpis suscipit at.
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.