Attributions

Thanks a lot!

Jekyll

First and foremost, this blog appeared in such shape thanks to Jekyll

Jekyll is a simple, blog-aware, static site generator. It takes a template directory containing raw text files in various formats, runs it through a converter (like Markdown) and our Liquid renderer, and spits out a complete, ready-to-publish static website suitable for serving with your favorite web server. Jekyll also happens to be the engine behind GitHub Pages, which means you can use Jekyll to host your project’s page, blog, or website from GitHub’s servers for free.

https://jekyllrb.com

There is a number of plugins at your disposal, one of which jekyll-assets saved me a lot of time. One of its great features is automatic generation and wiring of image assets of varying sizes from original files. Easy way to provide varied visual assets for responsive experience.

The plugins also helped me with SEO with respect to metadata and generating a sitemap for this site.

There is tons more, to get a feel, have a look at https://github.com/planetjekyll/awesome-jekyll-plugins.

Docker/DockerHub

If you didn’t know, Jekyll is also available as a Docker image.

Docker is the company driving the container movement and the only container platform provider to address every application across the hybrid cloud. Today’s businesses are under pressure to digitally transform but are constrained by existing applications and infrastructure while rationalizing an increasingly diverse portfolio of clouds, datacenters and application architectures. Docker enables true independence between applications and infrastructure and developers and IT ops to unlock their potential and creates a model for better collaboration and innovation.

https://www.docker.com/what-docker

With some tweaks it proved essential, as my current development setup does not include anything to do with Ruby or Node (task runners). Since I was completely new to Jekyll, I needed to experiment a lot.

In a short space of time I would trash my main development environment with remnants of failed configuration attempts and multitude of versions of ruby gems, npm dependencies and binaries that this build depends on. The image made it easier as it defines what a basic setup is. Thanks to Docker I kept it all isolated from my environment and I’ve gained a reproducible environment setup.

Bootstrap

Build responsive, mobile-first projects on the web with the world’s most popular front-end component library.

Bootstrap is an open source toolkit for developing with HTML, CSS, and JS. Quickly prototype your ideas or build your entire app with our Sass variables and mixins, responsive grid system, extensive prebuilt components, and powerful plugins built on jQuery.

https://getbootstrap.com

I appreciate Bootstrap as it allowed me to create a scaffolding of a responsive website (at least that was the aim). I am not much of a front-end developer and would most likely find it tedious to build such a website from scratch.

This website utilises a number of items from Bootstrap examples page. It is built around “Blog” template, but with some alterations. I use “Album” template’s cards, navigation bar comes from “Navbars” example and there is many other bits and bobs from Bootstrap’s website.

Syntax highlighting

To make it easier to follow the code snippets I’ve decided to use highlight.js. I like the fact that it is pretty much a drop-in feature and all it requires from my contents is language name after backticks. It is nice to keep markdown readable.

Intense Images

Easy-to-use, drop-in enhancement allowing full-screen image viewing by Intense Images.

A stand alone javascript library for viewing images on the full, full screen. Using the touch/mouse position for panning.

Thumbnail