This is the source code for my personal webpage.
The webpage falls under regular copyright laws and its code is available here only as a reference. This means you should NOT use it as a template for another website. Check Hakyll's website for better examples.
Here's the list of key things to me that I haven't found in Hakyll and managed to get working only after a few days of research and hard work (I know it might not seem so).
- Automatic PDF generation for tex files using Pandoc API itself (no ugly wrappers),
- reserves
$pdf$field for the link-to-file if the pdf file exists,
- reserves
- working bibtex citations (you need to set
$bibliography$in post metadata to point to the bib file) with clickable links and a 'References' section title before the rendered bibliography, - nice math rendering with MathJax (you need to set
$mathjax$to true in post metadata to make it load), - code snippets with syntax highlighting and linkable line numbering,
- you need to set
.numberLinesclass in the snippet attribute section (```{.numberLines})
- you need to set
- post categories based on
postsdir structure (thanks to Hakyll tags),$categories$renders links to all the existing categories,$category$is capitalized,
- no
posts/URL prefix for post entries, removeHTMLExtensionsfilter can be used to remove '.html' extension from relative links,- use if you want nice URLs without messing with the routes (e.g. you have set up mod_redirect in
.htaccess),
- use if you want nice URLs without messing with the routes (e.g. you have set up mod_redirect in
numbersections: truein the YAML block enables section numbering from LaTeX sources (unlike unmodified Hakyll),- for internal links in LaTeX sources use the standard
\label{id}with\protect\hyperlink{id}{link name}(\refdoes not work), teaser: "string"in the YAML block setsstringas the introduction for the post in the post list (it is INCLUDED in the post itself),- teaser also determines, if the post will be shown in the recent posts,
excludeteaser: truein the YAML block excludes the teaser from the post.
pagesfolder for static pages generation (accessible from root)- outputs to
docsto work with GitHub Pages