jekyll-theme-hydebetty 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.md +622 -0
  3. data/README.md +180 -0
  4. data/_includes/body/analytics.html +43 -0
  5. data/_includes/body/comments.html +6 -0
  6. data/_includes/body/footer.html +19 -0
  7. data/_includes/body/index.html +22 -0
  8. data/_includes/body/main.html +18 -0
  9. data/_includes/body/menu.html +24 -0
  10. data/_includes/body/nav.html +41 -0
  11. data/_includes/body/scripts.html +9 -0
  12. data/_includes/body/sidebar.html +47 -0
  13. data/_includes/components/about.html +8 -0
  14. data/_includes/components/author.html +24 -0
  15. data/_includes/components/avatar-tag.html +4 -0
  16. data/_includes/components/hy-img.html +40 -0
  17. data/_includes/components/link.html +12 -0
  18. data/_includes/components/message.html +14 -0
  19. data/_includes/components/pagination.html +15 -0
  20. data/_includes/components/post-list-item.html +7 -0
  21. data/_includes/components/post.html +49 -0
  22. data/_includes/components/related-posts.html +25 -0
  23. data/_includes/components/social-list-item.html +40 -0
  24. data/_includes/components/social.html +23 -0
  25. data/_includes/components/tag-list.html +26 -0
  26. data/_includes/head/feed-tag.html +1 -0
  27. data/_includes/head/index.html +9 -0
  28. data/_includes/head/links.html +33 -0
  29. data/_includes/head/meta.html +34 -0
  30. data/_includes/head/page-style.html +6 -0
  31. data/_includes/head/scripts.html +9 -0
  32. data/_includes/head/seo-fallback.html +13 -0
  33. data/_includes/head/seo-tag.html +4 -0
  34. data/_includes/head/styles.html +41 -0
  35. data/_includes/header.txt +13 -0
  36. data/_includes/icon-github.html +2 -0
  37. data/_includes/my-body.html +42 -0
  38. data/_includes/my-comments.html +24 -0
  39. data/_includes/my-head.html +13 -0
  40. data/_includes/my-scripts.html +55 -0
  41. data/_includes/scripts/cssrelpreload.min.js +1 -0
  42. data/_includes/scripts/load-js.js +60 -0
  43. data/_includes/scripts/load-js.min.js +0 -0
  44. data/_includes/scripts/loadCSS.min.js +1 -0
  45. data/_includes/scripts/nomodule.js +21 -0
  46. data/_includes/scripts/nomodule.min.js +0 -0
  47. data/_includes/scripts.html +33 -0
  48. data/_includes/smart-url.txt +1 -0
  49. data/_includes/styles/inline.scss +62 -0
  50. data/_includes/styles/page-style.scss +64 -0
  51. data/_includes/styles/style.scss +113 -0
  52. data/_includes/templates/animation.html +7 -0
  53. data/_includes/templates/back.html +6 -0
  54. data/_includes/templates/error.html +10 -0
  55. data/_includes/templates/forward.html +6 -0
  56. data/_includes/templates/index.html +12 -0
  57. data/_includes/templates/loading.html +6 -0
  58. data/_includes/templates/permalink.html +6 -0
  59. data/_layouts/about.html +43 -0
  60. data/_layouts/base.html +38 -0
  61. data/_layouts/blog.html +32 -0
  62. data/_layouts/compress.html +15 -0
  63. data/_layouts/default.html +56 -0
  64. data/_layouts/home.html +20 -0
  65. data/_layouts/list.html +46 -0
  66. data/_layouts/not-found.html +37 -0
  67. data/_layouts/page.html +27 -0
  68. data/_layouts/post.html +34 -0
  69. data/_layouts/redirect.html +23 -0
  70. data/_sass/_mixins.scss +63 -0
  71. data/_sass/_reboot-mod.scss +286 -0
  72. data/_sass/_spinner.scss +45 -0
  73. data/_sass/_syntax.scss +131 -0
  74. data/_sass/_variables.scss +63 -0
  75. data/_sass/hydejack/__inline__/_avatar.scss +48 -0
  76. data/_sass/hydejack/__inline__/_base.scss +73 -0
  77. data/_sass/hydejack/__inline__/_break-layout.scss +25 -0
  78. data/_sass/hydejack/__inline__/_content.scss +59 -0
  79. data/_sass/hydejack/__inline__/_footer.scss +25 -0
  80. data/_sass/hydejack/__inline__/_images.scss +38 -0
  81. data/_sass/hydejack/__inline__/_katex.scss +25 -0
  82. data/_sass/hydejack/__inline__/_links.scss +45 -0
  83. data/_sass/hydejack/__inline__/_mark-external.scss +25 -0
  84. data/_sass/hydejack/__inline__/_menu.scss +67 -0
  85. data/_sass/hydejack/__inline__/_sidebar.scss +144 -0
  86. data/_sass/hydejack/__inline__/_social.scss +58 -0
  87. data/_sass/hydejack/__inline__/_utilities.scss +45 -0
  88. data/_sass/hydejack/__link__/_avatar.scss +38 -0
  89. data/_sass/hydejack/__link__/_base.scss +42 -0
  90. data/_sass/hydejack/__link__/_break-layout.scss +64 -0
  91. data/_sass/hydejack/__link__/_content.scss +32 -0
  92. data/_sass/hydejack/__link__/_footer.scss +47 -0
  93. data/_sass/hydejack/__link__/_images.scss +90 -0
  94. data/_sass/hydejack/__link__/_katex.scss +57 -0
  95. data/_sass/hydejack/__link__/_links.scss +53 -0
  96. data/_sass/hydejack/__link__/_mark-external.scss +51 -0
  97. data/_sass/hydejack/__link__/_menu.scss +42 -0
  98. data/_sass/hydejack/__link__/_sidebar.scss +114 -0
  99. data/_sass/hydejack/__link__/_social.scss +33 -0
  100. data/_sass/hydejack/__link__/_utilities.scss +54 -0
  101. data/_sass/hydejack/_avatar.pre.scss +44 -0
  102. data/_sass/hydejack/_base.pre.scss +78 -0
  103. data/_sass/hydejack/_break-layout.pre.scss +55 -0
  104. data/_sass/hydejack/_content.pre.scss +56 -0
  105. data/_sass/hydejack/_footer.pre.scss +38 -0
  106. data/_sass/hydejack/_images.pre.scss +83 -0
  107. data/_sass/hydejack/_katex.pre.scss +48 -0
  108. data/_sass/hydejack/_links.pre.scss +47 -0
  109. data/_sass/hydejack/_mark-external.pre.scss +42 -0
  110. data/_sass/hydejack/_menu.pre.scss +74 -0
  111. data/_sass/hydejack/_sidebar.pre.scss +175 -0
  112. data/_sass/hydejack/_social.pre.scss +55 -0
  113. data/_sass/hydejack/_utilities.pre.scss +46 -0
  114. data/_sass/my-inline.scss +16 -0
  115. data/_sass/my-style.scss +9 -0
  116. data/_sass/my-variables.scss +1 -0
  117. data/_sass/pooleparty/__inline__/_base.scss +75 -0
  118. data/_sass/pooleparty/__inline__/_code.scss +25 -0
  119. data/_sass/pooleparty/__inline__/_footer.scss +25 -0
  120. data/_sass/pooleparty/__inline__/_footnotes.scss +25 -0
  121. data/_sass/pooleparty/__inline__/_message.scss +35 -0
  122. data/_sass/pooleparty/__inline__/_pagination.scss +25 -0
  123. data/_sass/pooleparty/__inline__/_posts.scss +49 -0
  124. data/_sass/pooleparty/__inline__/_read-more.scss +25 -0
  125. data/_sass/pooleparty/__inline__/_related.scss +38 -0
  126. data/_sass/pooleparty/__inline__/_table.scss +53 -0
  127. data/_sass/pooleparty/__inline__/_type.scss +88 -0
  128. data/_sass/pooleparty/__link__/_base.scss +40 -0
  129. data/_sass/pooleparty/__link__/_code.scss +75 -0
  130. data/_sass/pooleparty/__link__/_footer.scss +25 -0
  131. data/_sass/pooleparty/__link__/_footnotes.scss +80 -0
  132. data/_sass/pooleparty/__link__/_message.scss +25 -0
  133. data/_sass/pooleparty/__link__/_pagination.scss +90 -0
  134. data/_sass/pooleparty/__link__/_posts.scss +38 -0
  135. data/_sass/pooleparty/__link__/_read-more.scss +45 -0
  136. data/_sass/pooleparty/__link__/_related.scss +33 -0
  137. data/_sass/pooleparty/__link__/_table.scss +171 -0
  138. data/_sass/pooleparty/__link__/_type.scss +141 -0
  139. data/_sass/pooleparty/_base.pre.scss +74 -0
  140. data/_sass/pooleparty/_code.pre.scss +66 -0
  141. data/_sass/pooleparty/_footer.pre.scss +16 -0
  142. data/_sass/pooleparty/_footnotes.pre.scss +71 -0
  143. data/_sass/pooleparty/_message.pre.scss +26 -0
  144. data/_sass/pooleparty/_pagination.pre.scss +81 -0
  145. data/_sass/pooleparty/_posts.pre.scss +52 -0
  146. data/_sass/pooleparty/_read-more.pre.scss +36 -0
  147. data/_sass/pooleparty/_related.pre.scss +35 -0
  148. data/_sass/pooleparty/_table.pre.scss +180 -0
  149. data/_sass/pooleparty/_type.pre.scss +193 -0
  150. data/assets/Resume.pdf +0 -0
  151. data/assets/bower.json +11 -0
  152. data/assets/bower_components/html5shiv/.bower.json +26 -0
  153. data/assets/bower_components/html5shiv/Gruntfile.js +61 -0
  154. data/assets/bower_components/html5shiv/bower.json +15 -0
  155. data/assets/bower_components/html5shiv/dist/html5shiv-printshiv.js +524 -0
  156. data/assets/bower_components/html5shiv/dist/html5shiv-printshiv.min.js +4 -0
  157. data/assets/bower_components/html5shiv/dist/html5shiv.js +326 -0
  158. data/assets/bower_components/html5shiv/dist/html5shiv.min.js +4 -0
  159. data/assets/bower_components/html5shiv/package.json +16 -0
  160. data/assets/bower_components/katex/.bower.json +47 -0
  161. data/assets/bower_components/katex/LICENSE +21 -0
  162. data/assets/bower_components/katex/bower.json +36 -0
  163. data/assets/bower_components/katex/dist/contrib/auto-render.js +339 -0
  164. data/assets/bower_components/katex/dist/contrib/auto-render.min.js +1 -0
  165. data/assets/bower_components/katex/dist/contrib/auto-render.mjs +215 -0
  166. data/assets/bower_components/katex/dist/contrib/copy-tex.css +14 -0
  167. data/assets/bower_components/katex/dist/contrib/copy-tex.js +213 -0
  168. data/assets/bower_components/katex/dist/contrib/copy-tex.min.css +1 -0
  169. data/assets/bower_components/katex/dist/contrib/copy-tex.min.js +1 -0
  170. data/assets/bower_components/katex/dist/contrib/copy-tex.mjs +85 -0
  171. data/assets/bower_components/katex/dist/contrib/mathtex-script-type.js +137 -0
  172. data/assets/bower_components/katex/dist/contrib/mathtex-script-type.min.js +1 -0
  173. data/assets/bower_components/katex/dist/contrib/mathtex-script-type.mjs +24 -0
  174. data/assets/bower_components/katex/dist/contrib/mhchem.js +3241 -0
  175. data/assets/bower_components/katex/dist/contrib/mhchem.min.js +1 -0
  176. data/assets/bower_components/katex/dist/contrib/mhchem.mjs +3109 -0
  177. data/assets/bower_components/katex/dist/fonts/KaTeX_AMS-Regular.ttf +0 -0
  178. data/assets/bower_components/katex/dist/fonts/KaTeX_AMS-Regular.woff +0 -0
  179. data/assets/bower_components/katex/dist/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  180. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  181. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  182. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  183. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  184. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  185. data/assets/bower_components/katex/dist/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  186. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  187. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  188. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  189. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  190. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  191. data/assets/bower_components/katex/dist/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  192. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Bold.ttf +0 -0
  193. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Bold.woff +0 -0
  194. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Bold.woff2 +0 -0
  195. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  196. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  197. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  198. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Italic.ttf +0 -0
  199. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Italic.woff +0 -0
  200. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Italic.woff2 +0 -0
  201. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Regular.ttf +0 -0
  202. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Regular.woff +0 -0
  203. data/assets/bower_components/katex/dist/fonts/KaTeX_Main-Regular.woff2 +0 -0
  204. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  205. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  206. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  207. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-Italic.ttf +0 -0
  208. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-Italic.woff +0 -0
  209. data/assets/bower_components/katex/dist/fonts/KaTeX_Math-Italic.woff2 +0 -0
  210. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  211. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  212. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  213. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  214. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  215. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  216. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  217. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  218. data/assets/bower_components/katex/dist/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  219. data/assets/bower_components/katex/dist/fonts/KaTeX_Script-Regular.ttf +0 -0
  220. data/assets/bower_components/katex/dist/fonts/KaTeX_Script-Regular.woff +0 -0
  221. data/assets/bower_components/katex/dist/fonts/KaTeX_Script-Regular.woff2 +0 -0
  222. data/assets/bower_components/katex/dist/fonts/KaTeX_Size1-Regular.ttf +0 -0
  223. data/assets/bower_components/katex/dist/fonts/KaTeX_Size1-Regular.woff +0 -0
  224. data/assets/bower_components/katex/dist/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  225. data/assets/bower_components/katex/dist/fonts/KaTeX_Size2-Regular.ttf +0 -0
  226. data/assets/bower_components/katex/dist/fonts/KaTeX_Size2-Regular.woff +0 -0
  227. data/assets/bower_components/katex/dist/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  228. data/assets/bower_components/katex/dist/fonts/KaTeX_Size3-Regular.ttf +0 -0
  229. data/assets/bower_components/katex/dist/fonts/KaTeX_Size3-Regular.woff +0 -0
  230. data/assets/bower_components/katex/dist/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  231. data/assets/bower_components/katex/dist/fonts/KaTeX_Size4-Regular.ttf +0 -0
  232. data/assets/bower_components/katex/dist/fonts/KaTeX_Size4-Regular.woff +0 -0
  233. data/assets/bower_components/katex/dist/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  234. data/assets/bower_components/katex/dist/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  235. data/assets/bower_components/katex/dist/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  236. data/assets/bower_components/katex/dist/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  237. data/assets/bower_components/katex/dist/katex.css +1021 -0
  238. data/assets/bower_components/katex/dist/katex.js +16809 -0
  239. data/assets/bower_components/katex/dist/katex.min.css +1 -0
  240. data/assets/bower_components/katex/dist/katex.min.js +1 -0
  241. data/assets/bower_components/katex/dist/katex.mjs +16342 -0
  242. data/assets/bower_components/katex/yarn.lock +8952 -0
  243. data/assets/css/hydejack-7.5.2.css +3 -0
  244. data/assets/css/hydejack-8.5.2.css +3 -0
  245. data/assets/icomoon/fonts/icomoon.eot +0 -0
  246. data/assets/icomoon/fonts/icomoon.svg +96 -0
  247. data/assets/icomoon/fonts/icomoon.ttf +0 -0
  248. data/assets/icomoon/fonts/icomoon.woff +0 -0
  249. data/assets/icomoon/selection.json +1 -0
  250. data/assets/icomoon/style.css +284 -0
  251. data/assets/icons/favicon.ico +0 -0
  252. data/assets/icons/icon.png +0 -0
  253. data/assets/icons/icon@0,25x.png +0 -0
  254. data/assets/icons/icon@0,5x.png +0 -0
  255. data/assets/icons/icon@0,75x.png +0 -0
  256. data/assets/icons/icon@2x.png +0 -0
  257. data/assets/icons/icon@3x.png +0 -0
  258. data/assets/icons/tile-large.png +0 -0
  259. data/assets/icons/tile-medium.png +0 -0
  260. data/assets/icons/tile-small.png +0 -0
  261. data/assets/icons/tile-wide.png +0 -0
  262. data/assets/ieconfig.xml +15 -0
  263. data/assets/img/blog/COLOURlovers.com-Hydejack.png +0 -0
  264. data/assets/img/blog/blog-layout.jpg +0 -0
  265. data/assets/img/blog/caleb-george-old.jpg +0 -0
  266. data/assets/img/blog/caleb-george.jpg +0 -0
  267. data/assets/img/blog/cover-page.jpg +0 -0
  268. data/assets/img/blog/dark-mode-ii.jpg +0 -0
  269. data/assets/img/blog/dark-mode.jpg +0 -0
  270. data/assets/img/blog/example-content-ii.jpg +0 -0
  271. data/assets/img/blog/example-content-iii.jpg +0 -0
  272. data/assets/img/blog/hydejack-8.png +0 -0
  273. data/assets/img/blog/hydejack-8@0,25x.png +0 -0
  274. data/assets/img/blog/hydejack-8@0,5x.png +0 -0
  275. data/assets/img/blog/lazy-images.jpg +0 -0
  276. data/assets/img/blog/louis-hansel.jpg +0 -0
  277. data/assets/img/blog/resume.png +0 -0
  278. data/assets/img/blog/steve-harvey.jpg +0 -0
  279. data/assets/img/blog/w3m.png +0 -0
  280. data/assets/img/blog/wade-lambert.jpg +0 -0
  281. data/assets/img/docs/google-fonts.png +0 -0
  282. data/assets/img/projects/hy-drawer.svg +12 -0
  283. data/assets/img/projects/hy-img.svg +17 -0
  284. data/assets/img/projects/hy-push-state.svg +13 -0
  285. data/assets/img/sidebar-bg.jpg +0 -0
  286. data/assets/img/swipe.svg +22 -0
  287. data/assets/js/hydejack-8.5.2.js +161 -0
  288. data/assets/js/hydejack-legacy-8.5.2.js +190 -0
  289. data/assets/manifest.json +46 -0
  290. data/assets/version.json +3 -0
  291. data/assets/video/blog-layout.mp4 +0 -0
  292. data/assets/video/cover-page.mp4 +0 -0
  293. data/assets/video/dark-mode.mp4 +0 -0
  294. data/assets/video/lazy-images.mp4 +0 -0
  295. data/licenses/Apache-2.0.md +208 -0
  296. data/licenses/GPL-3.0.md +620 -0
  297. data/licenses/MIT.md +21 -0
  298. data/licenses/PRO.md +136 -0
  299. data/licenses/README.md +10 -0
  300. data/licenses/W3C.md +31 -0
  301. metadata +385 -0
data/README.md ADDED
@@ -0,0 +1,180 @@
1
+ # Hydejack
2
+
3
+ The "Best Jekyll Theme by a Mile".
4
+
5
+
6
+ ![Screenshot](assets/img/blog/hydejack-8.png)
7
+ Hydejack's cover page on a variety of screens.
8
+
9
+
10
+ **Hydejack** is your presence on the web. It gives you a *blog* that is suitable for both prose and technical documentation, a *portfolio* to showcase your projects, and a beautiful *resume* template that looks amazing on the web and in print.
11
+
12
+ > Your presence on the web — A [blog], a [portfolio], and a [resume].
13
+
14
+
15
+ There are two versions of **Hydejack**: The base version is free, while features that are specific to *professionals* are a payed upgrade.
16
+
17
+ | | Free | PRO |
18
+ |:-----------------------|:--------------:|:--------:|
19
+ | Blog | ✔ | ✔ |
20
+ | [Features] | ✔ | ✔ |
21
+ | [Portfolio] | | ✔ |
22
+ | [Resume] | | ✔ |
23
+ | [Welcome] | | ✔ |
24
+ | [Newsletter Box][news] | | ✔ |
25
+ | [Custom Forms][forms] | | ✔ |
26
+ | [Dark Mode][darkm] | | ✔ |
27
+ | [Offline Support][ofln]| | ✔ |
28
+ | Cookie Banner | | ✔ |
29
+ | No Hydejack Branding | | ✔ |
30
+ | License | [GPL-3.0][lic] | [PRO] |
31
+ | Source | [GitHub][src] | Included |
32
+ | Support[^1] | No | No |
33
+ | Price | Free | $59 |
34
+ | | [**Download**][kit] <br/>-- or --<br/> [![Deploy to Netlify][dtn]][nfy] | [**Buy PRO** --- $59][buy] |
35
+
36
+
37
+
38
+ ## A Free Blogging Theme
39
+ **Hydejack** started out as a free blogging theme for Jekyll — and continues to be so.
40
+
41
+ <!--posts-->
42
+
43
+
44
+ ## An Impressive Portfolio
45
+ A portfolio that's guaranteed to be impressive — no matter what you put into it.
46
+
47
+ <!--projects-->
48
+
49
+
50
+ ## A Printable Resume
51
+ Get a resume that's consistent across the board — whether it's on the web, mobile, print, or [PDF](assets/Resume.pdf).
52
+
53
+ ![Resume PDF](assets/img/blog/resume.png)
54
+ Front and center page of a print resume generated by Hydejack.
55
+
56
+
57
+
58
+ ## Just Markup
59
+ **Hydejack** boasts a plethora of modern JavaScript, but make no mistake: It's still a plain old *web page* at its core. It works without JavaScript, and you can even view it in a text-based browser like `w3m`:
60
+
61
+ ![w3m Screenshot](assets/img/blog/w3m.png)
62
+ The Hydejack blog, as seen by the text browser `w3m`.
63
+
64
+
65
+
66
+ ## Syntax Highlighting
67
+ **Hydejack** features syntax highlighting, powered by [Rouge].
68
+
69
+ ```js
70
+ document.getElementsByTagName("hy-push-state")[0].addEventListener("hy-push-state-load", function() {
71
+ // <your init code>
72
+ });
73
+ ```
74
+
75
+
76
+ ## Beautiful Math
77
+ They say math is beautiful — and with **Hydejack**'s [math support][latex] it's also guaranteed to *look* beautiful.
78
+
79
+ ![Math Screenshot](assets/img/blog/example-content-iii.jpg)
80
+ Hydejack uses KaTeX to efficiently render math.
81
+
82
+
83
+
84
+ ## Build an Audience
85
+ The PRO version has built-in support for customizable [Tinyletter] newsletter subscription boxes.
86
+
87
+ If you are using a different service like MailChimp, you can build a custom newsletter subscription box using [Custom Forms][forms].
88
+
89
+
90
+ ## A Personal Site That Belongs to You
91
+ **Hydejack** is 100% built on Open Source software, and is Open Source itself, save for parts of the PRO version. The PRO version is a one-time payment that gives you the right to use it forever.
92
+
93
+
94
+ ## Features
95
+ An incomplete list of features included in all versions of **Hydejack**:
96
+
97
+ * Full in-app page loading, powered by [hy-push-state]
98
+ * Customizable sidebar and touch-enabled drawer menu, powered by [hy-drawer]
99
+ * Lazy image loading with cancellation and placeholder, powered by [hy-img]
100
+ * Advanced FLIP animations, inspired by Material Design
101
+ * 99/100 [Google PageSpeed Score][gpss][^2]
102
+ * [Syntax highlighting][syntax], powered by [Rouge]
103
+ * [LaTeX math blocks][latex], powered by [KaTeX]
104
+ * Change the wording of built-in strings and possibly translate in other languages
105
+ * Support for categories and tags
106
+ * Built-in icons for many social networks
107
+ * Simple and semantic HTML
108
+ * Structured Data for core entities
109
+ * Author section below each article and support for multiple authors
110
+ * Google Analytics and Google Fonts support
111
+
112
+
113
+ ## Download
114
+ There are two versions of **Hydejack**: The *free version* includes basic blogging functionality, as did previous versions of the theme.
115
+ The *PRO version* includes additional features for professionals:
116
+ A [portfolio], a [resume] layout, and a [welcome] page to highlight your favorite projects and posts.
117
+
118
+ This table below shows what's included in each version:
119
+
120
+ | | Free | PRO |
121
+ |:-----------------------|:--------------:|:--------:|
122
+ | Blog | &#x2714; | &#x2714; |
123
+ | [Features] | &#x2714; | &#x2714; |
124
+ | [Portfolio] | | &#x2714; |
125
+ | [Resume] | | &#x2714; |
126
+ | [Welcome] | | &#x2714; |
127
+ | [Newsletter Box][news] | | &#x2714; |
128
+ | [Custom Forms][forms] | | &#x2714; |
129
+ | [Dark Mode][darkm] | | &#x2714; |
130
+ | [Offline Support][ofln]| | &#x2714; |
131
+ | Cookie Banner | | &#x2714; |
132
+ | No Hydejack Branding | | &#x2714; |
133
+ | License | [GPL-3.0][lic] | [PRO] |
134
+ | Source | [GitHub][src] | Included |
135
+ | Support[^1] | No | No |
136
+ | Price | Free | $59 |
137
+ | | [**Download**][kit] <br/>-- or --<br/> [![Deploy to Netlify][dtn]][nfy] | [**Buy PRO** --- $59][buy] |
138
+
139
+
140
+
141
+
142
+ [^1]: You MAY open an issue on GitHub, but no response and/or fix is guaranteed.
143
+ You understand that using Jekyll requires technical know-how and is not comparable to Wordpress in terms of ease of use. Please use the free version to confirm that Hydejack works for you. For details, see the [PRO] license.
144
+
145
+ [^2]: Actual page load speed depends on your hosting provider, resolution of embedded images and usage of 3rd party plugins.
146
+
147
+ [blog]: https://hydejack.com/blog/
148
+ [portfolio]: https://hydejack.com/projects/
149
+ [resume]: https://hydejack.com/resume/
150
+ [download]: https://hydejack.com/download/
151
+ [welcome]: https://hydejack.com/
152
+ [forms]: https://hydejack.com/forms-by-example/
153
+
154
+ [features]: #features
155
+ [news]: #build-an-audience
156
+ [syntax]: #syntax-highlighting
157
+ [latex]: hydejack/_posts/2018-06-01-example-content-iii.md#math
158
+ [darkm]: hydejack/_posts/2018-09-01-introducing-dark-mode.md
159
+
160
+ [lic]: LICENSE.md
161
+ [pro]: licenses/PRO.md
162
+ [docs]: docs/README.md
163
+ [ofln]: docs/advanced.md#enabling-offline-support
164
+
165
+ [kit]: https://github.com/qwtel/hydejack-starter-kit/archive/v8.5.0.zip
166
+ [src]: https://github.com/qwtel/hydejack
167
+ [gem]: https://rubygems.org/gems/jekyll-theme-hydejack
168
+ [buy]: https://app.simplegoods.co/i/NATYVLYT
169
+ [nfy]: https://app.netlify.com/start/deploy?repository=https://github.com/qwtel/hydejack-starter-kit
170
+ [dtn]: https://www.netlify.com/img/deploy/button.svg
171
+
172
+ [gpss]: https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fhydejack.com%2F
173
+ [hy-push-state]: https://qwtel.com/hy-push-state/
174
+ [hy-drawer]: https://qwtel.com/hy-drawer/
175
+ [hy-img]: https://qwtel.com/hy-img/
176
+ [rouge]: http://rouge.jneen.net
177
+ [katex]: https://khan.github.io/KaTeX/
178
+ [tinyletter]: https://tinyletter.com/
179
+
180
+ *[FLIP]: First-Last-Invert-Play. A coding technique to achieve performant page transition animations.
@@ -0,0 +1,43 @@
1
+ {% if site.google_analytics %}
2
+ <script>!function(w, d) {
3
+ w.ga=w.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
4
+
5
+ /*{% if site.hydejack.cookies_banner %}*/
6
+ if (navigator.CookiesOK) {
7
+ ga('create', '{{ site.google_analytics }}', 'auto');
8
+ } else if (d.cookie.indexOf("hy--cookies-ok=true") > -1) {
9
+ ga('create', '{{ site.google_analytics }}', {
10
+ 'storage': 'none',
11
+ 'clientId': localStorage ? localStorage.getItem('ga--client-id') : undefined
12
+ });
13
+ } else {
14
+ ga('create', '{{ site.google_analytics }}', {
15
+ 'storage': 'none'
16
+ });
17
+ ga('set', 'forceSSL', true);
18
+ ga('set', 'anonymizeIp', true);
19
+ }
20
+ /*{% else %}*/
21
+ ga('create', '{{ site.google_analytics }}', 'auto');
22
+ /*{% endif %}*/
23
+
24
+ var pushStateEl = d.getElementsByTagName('hy-push-state')[0];
25
+ var timeoutId;
26
+ pushStateEl.addEventListener('hy-push-state-load', function() {
27
+ w.clearTimeout(timeoutId);
28
+ timeoutId = w.setTimeout(function() {
29
+ ga('set', 'page', w.location.pathname);
30
+ ga('send', 'pageview');
31
+ }, 500);
32
+ });
33
+
34
+ d.addEventListener('hy--cookies-ok', function () {
35
+ w.ga(function(tracker) {
36
+ w.ga("set", "anonymizeIp", undefined);
37
+ localStorage && localStorage.setItem("ga--client-id", tracker.get("clientId"));
38
+ });
39
+ });
40
+
41
+ w.loadJSDeferred('https://www.google-analytics.com/analytics.js');
42
+ }(window, document);</script>
43
+ {% endif %}
@@ -0,0 +1,6 @@
1
+ {% if page.comments %}
2
+ <aside class="comments related" role="complementary">
3
+ <h2 class="hr">{{ site.data.strings.comments | default:"Comments" }}</h2>
4
+ {% include my-comments.html %}
5
+ </aside>
6
+ {% endif %}
@@ -0,0 +1,19 @@
1
+ {% if site.copyright.size > 0 or site.legal.size > 0 or site.hydejack.advertise %}
2
+ <footer role="contentinfo">
3
+ <hr/>
4
+ {% if site.copyright.size > 0 %}
5
+ <p><small class="copyright">{{ site.copyright | markdownify | replace:'<p>','' | replace:'</p>','' }}</small></p>
6
+ {% endif %}
7
+ {% if site.legal.size > 0 %}
8
+ <nav class="legal"><small>
9
+ {% for node in site.legal %}
10
+ {% assign url = node.url | default: node.href %}
11
+ <a class="heading flip-title" href="{% include smart-url.txt url=url %}">{{ node.name | default:node.title }}</a>
12
+ {% unless forloop.last %}{{ site.data.strings.separator | default:'|' }}{% endunless %}
13
+ {% endfor %}
14
+ </small></nav>
15
+ {% endif %}
16
+ <p><small>Powered by <a class="external" href="https://hydejack.com/">Hydejack</a> v<span id="_version">8.5.2</span></small></p>
17
+ <hr class="sr-only"/>
18
+ </footer>
19
+ {% endif %}
@@ -0,0 +1,22 @@
1
+ {% include body/menu.html %}
2
+
3
+ <hy-push-state
4
+ replace-ids="_main"
5
+ link-selector="a[href]:not([href*='/assets/']):not(.external):not(.no-push-state)"
6
+ duration="250"
7
+ script-selector="script:not([type^='math/tex'])"
8
+ prefetch
9
+ >
10
+ {% if page.cover %}
11
+ {% include body/sidebar.html %}
12
+ {% include body/main.html %}
13
+ {% else %}
14
+ {% include body/main.html %}
15
+ {% include body/sidebar.html %}
16
+ {% endif %}
17
+ </hy-push-state>
18
+
19
+ {% include body/scripts.html %}
20
+ {% include my-body.html %}
21
+
22
+ {% include templates/index.html %}
@@ -0,0 +1,18 @@
1
+ <main
2
+ id="_main"
3
+ class="content fade-in layout-{{ page.layout }}"
4
+ role="main"
5
+ data-color="{{ color | escape }}"
6
+ data-theme-color="{{ theme_color | escape }}"
7
+ {% unless image.background %}
8
+ data-image="{% if image == 'none' %}none{% else %}{% capture tmp %}{% include smart-url.txt url=image %}{% endcapture %}{{ tmp | escape }}{% endif %}"
9
+ {% if image != 'none' %}data-overlay{% endif %}
10
+ {% else %}
11
+ data-background="{{ image.background | escape }}"
12
+ {% if image.overlay %}data-overlay{% endif %}
13
+ {% endunless %}
14
+ >
15
+ {{ content }}
16
+ {% include body/comments.html %}
17
+ {% include body/footer.html %}
18
+ </main>
@@ -0,0 +1,24 @@
1
+ <div id="_navbar" class="navbar fixed-top">
2
+ <div class="content">
3
+ <div class="nav-btn-bar">
4
+ <span class="sr-only">{{ site.data.strings.jump_to | default:"Jump to" }}{{ site.data.strings.colon | default:":" }}</span>
5
+ <a id="_menu" class="nav-btn no-hover fl" href="#_navigation">
6
+ <span class="sr-only">{{ site.data.strings.navigation | default:"Navigation" }}</span>
7
+ <span class="icon-menu"></span>
8
+ </a>
9
+ <!-- <a id="_search" class="nav-btn no-hover fl" href="#_search">
10
+ <span class="sr-only">{{ site.data.strings.search | default:"Search" }}</span>
11
+ <span class="icon-search"></span>
12
+ </a>
13
+ <form action="https://duckduckgo.com/" method="GET">
14
+ <div class="form-group fr">
15
+ <label class="sr-only" for="_search">{{ site.data.strings.search | default:"Search" }}</label>
16
+ <input id="_search" name="q" class="form-control" type="search" />
17
+ </div>
18
+ <input type="hidden" name="q" value="site:hydejack.com" />
19
+ <input type="hidden" name="ia" value="web" />
20
+ </form> -->
21
+ </div>
22
+ </div>
23
+ </div>
24
+ <hr class="sr-only" hidden />
@@ -0,0 +1,41 @@
1
+ <span class="sr-only">{{ site.data.strings.navigation | default:"Navigation" }}{{ site.data.strings.colon | default:":" }}</span>
2
+ <ul>
3
+ {% if site.menu %}
4
+ {% for node in site.menu %}
5
+ {% assign url = node.url | default: node.href %}
6
+ <li>
7
+ <a
8
+ {% if forloop.first %}id="_navigation"{% endif %}
9
+ href="{% include smart-url.txt url=url %}"
10
+ class="sidebar-nav-item{% if page.url contains url %} active{% endif %}"
11
+ {% if node.rel %}rel="{{ node.rel }}"{% endif %}
12
+ >
13
+ {{ node.name | default:node.title }}
14
+ </a>
15
+ </li>
16
+ {% endfor %}
17
+ {% else %}
18
+ {% assign pages = site.pages | where: "menu", true %}
19
+ {% assign documents = site.documents | where: "menu", true %}
20
+ {% assign nodes = pages | concat: documents | sort: "order" %}
21
+
22
+ {% for node in nodes %}
23
+ {% unless node.redirect_to %}
24
+ <li>
25
+ <a
26
+ {% if forloop.first %}id="_navigation"{% endif %}
27
+ href="{{ node.url | relative_url }}"
28
+ class="sidebar-nav-item{% if page.url contains node.url %} active{% endif %}"
29
+ {% if node.rel %}rel="{{ node.rel }}"{% endif %}
30
+ >
31
+ {{ node.title }}
32
+ </a>
33
+ </li>
34
+ {% else %}
35
+ <li>
36
+ <a href="{{ node.redirect_to }}" class="sidebar-nav-item external" >{{ node.title }}</a>
37
+ </li>
38
+ {% endunless %}
39
+ {% endfor %}
40
+ {% endif %}
41
+ </ul>
@@ -0,0 +1,9 @@
1
+ <!--[if gt IE 10]><!---->
2
+ {% unless page.redirect %}
3
+ <script nomodule>{% include scripts/nomodule.min.js %}</script>
4
+ <script type="module" src="{{ "/assets/js/hydejack-8.5.2.js" | relative_url }}"></script>
5
+ <script nomodule src="{{ "/assets/js/hydejack-legacy-8.5.2.js" | relative_url }}" defer></script>
6
+ {% include my-scripts.html %}
7
+ {% include body/analytics.html %}
8
+ {% endunless %}
9
+ <!--<![endif]-->
@@ -0,0 +1,47 @@
1
+ <hy-drawer
2
+ class="{% if page.cover %}cover{% endif %}"
3
+ align="left"
4
+ threshold="10"
5
+ touch-events
6
+ prevent-default
7
+ >
8
+ <header id="_sidebar" class="sidebar" role="banner">
9
+ {% if image.background %}
10
+ {% capture bg_style %}background:{{ image.background }}{% endcapture %}
11
+ {% capture bg_class %}sidebar-bg {% if image.overlay %}sidebar-overlay{% endif %}{% endcapture %}
12
+ {% else %}
13
+ {% assign bg_color = page.theme_color | default:site.theme_color | default:color %}
14
+ {% capture bg_style %}background-color:{{bg_color}};{% if image != 'none' %}background-image:url({% include smart-url.txt url=image %}){% endif %}{% endcapture %}
15
+ {% capture bg_class %}sidebar-bg {% if image != 'none' %}sidebar-overlay{% endif %}{% endcapture %}
16
+ {% endif %}
17
+ <div class="{{bg_class}}" style="{{bg_style}}"></div>
18
+
19
+ <div class="sidebar-sticky">
20
+ <div class="sidebar-about">
21
+ {% if site.logo %}
22
+ <a class="no-hover" href="{{ '/' | relative_url }}" tabindex="-1">
23
+ <img src="{{ site.logo | relative_url }}" class="avatar" alt="{{ site.short_title | default:site.title }}" data-ignore />
24
+ </a>
25
+ {% endif %}
26
+ <h2 class="h1"><a href="{{ '/' | relative_url }}">{{ site.short_title | default:site.title }}</a></h2>
27
+ {% assign text = site.tagline | default:site.description %}
28
+ {% if text %}
29
+ <p class="{% if text.size > 100 %}fine{% endif %}">
30
+ {{ text | markdownify | replace:'<p>','' | replace:'</p>','' }}
31
+ </p>
32
+ {% endif %}
33
+ </div>
34
+
35
+ <nav class="sidebar-nav heading" role="navigation">
36
+ {% include body/nav.html %}
37
+ </nav>
38
+
39
+ {% assign author = site.data.authors.first[1] | default:site.author %}
40
+
41
+ <div class="sidebar-social">
42
+ {% include components/social.html author=author %}
43
+ </div>
44
+ </div>
45
+ </header>
46
+ </hy-drawer>
47
+ <hr class="sr-only" hidden />
@@ -0,0 +1,8 @@
1
+ {% assign author = site.data.authors[page.author] | default:site.data.authors.first[1] | default:site.author %}
2
+
3
+ {% if author.about %}
4
+ <aside class="about related mt4 mb4" role="complementary">
5
+ {% assign about_heading = site.data.strings.about | default:"About" %}
6
+ {% include components/author.html author=author heading=about_heading heading_tag='h2' %}
7
+ </aside>
8
+ {% endif %}
@@ -0,0 +1,24 @@
1
+ {% assign plugins = site.plugins | default:site.gems %}
2
+
3
+ <div class="author mt4">
4
+ {% assign author = include.author %}
5
+
6
+ {% if author.picture %}
7
+ {% include components/hy-img.html class="avatar" img=author.picture alt=author.name %}
8
+ {% elsif plugins contains 'jekyll-avatar' %}
9
+ {% assign avatar = author.social.github | default:author.github.username | default:author.github %}
10
+ {% include components/avatar-tag.html user=avatar %}
11
+ {% endif %}
12
+
13
+ {% assign heading_tag = include.heading_tag | default:'h2' %}
14
+ {% assign heading_id = include.heading_id %}
15
+ <{{ heading_tag }} {% if heading_id %}id="{{ heading_id }}"{% endif %} class="page-title hr">
16
+ {{ include.heading | default:author.name }}
17
+ </{{ heading_tag }}>
18
+
19
+ {{ .author.about | markdownify }}
20
+
21
+ <div class="sidebar-social">
22
+ {% include components/social.html author=author %}
23
+ </div>
24
+ </div>