A laptop showing a blog with a horizontal menu bar, beside a phone showing the same blog with a glowing hamburger icon and a navigation drawer slid open

Adding a responsive menu to your Hugo PaperMod blog

I have been using Hugo-PaperMod as a theme for quite some time. It is pretty lightweight and yet flexible. For the past 4-5 years, I have been working with this Hugo based blog and I have definitely learned a lot about the structure of a Hugo website and made several modifications to the original theme but just on my blog and shared about it earlier. There was one thing that I hadn’t done for quite sometime. Primarily because I really don’t have the time to keep modifying themes. I barely have time to write about things I want to write. But today I bit the bullet and decided that I was going to do it. This is partly because my wife was reviewing the latest Resume page that I added and she told me that the navigation had to be scrolled horizontally! And as someone who has built user friendly platforms most of my professional career, this hurt. So off to work I went. ...

November 9, 2024 · 4 min · 794 words · Eakan Gopalakrishnan
Futuristic Humanoid optimising the algorithm for searching a word

How I optimised my blog's search performance

By now you are already aware that at this time, this blog is using Hugo-PaperMod as its theme. This theme, as I have repeatedly mentioned, is pretty minimalistic yet full of necessary features. One such feature is search. As this is a static website, search is implemented on the client-side. When Hugo builds the website, it generates a certain index.json that is indexed for this very purpose. PaperMod uses Fuse.js for its search. You can read all about it in the GitHub hosted documentation. ...

February 5, 2024 · 3 min · 546 words · Eakan Gopalakrishnan
Comments flying in air like hot air balloons just around sunset

How to add commenting functionality to your Hugo Blog using Utterances

Before I used PaperMod as my website’s base theme, I had it using Hugo-clarity. Both these themes couldn’t be further apart from one another. When I look back today, I still wonder why I chose Clarity, maybe it was the fact that it came with an abundant feature-set, of which I probably only used like 50% or less. But it was my first experience with Hugo. Back then, I used Disqus to enable users to comment on my posts. It was easy to get started with in that theme, there was built-in support. All I had to do was link my Disqus account, which I created just for this purpose. ...

February 4, 2024 · 4 min · 663 words · Eakan Gopalakrishnan
Futuristic driver driving their automobile with various modes

How to create a custom mode for Hugo-PaperMod theme using go template and html

If you are reading this post, you might already be wondering what theme I use. It is not a secret. I use Hugo-PaperMod for this blog. It is a minimalistic looking theme which just so happens to be pretty feature rich at the same time. Hugo-PaperMod offers you three modes in which you can display the landing page of your blog. Regular Mode Home Info Mode Profile Mode I appreciate these modes as they are. But I wanted something different. If you have seen my landing page, you already know where I am going with this. ...

February 3, 2024 · 2 min · 421 words · Eakan Gopalakrishnan
A stylish girl in formal attire posing for a picture in Oxford Street

Style Modifications to Hugo PaperMod

I wanted to give a shout-out to a GitHub Repository that I came across, which hosted some custom CSS for modifying the look of PaperMod by a tiny bit. I thought I’d try it and hence the shout-out. Checkout hugo-PaperMod-Mod. The styles include: thumbnails sidebar table of contents wider posts on landing page

February 2, 2024 · 1 min · 53 words · Eakan Gopalakrishnan
A latte with latte art in a cup, illustrating a Buy Me a Coffee button on a blog

Hugo Partial for Buy me a coffee button

So you have started using Hugo for your website or blog or whatever you have built, and you came across something called a Shortcode. If Hugo were a programming language, shortcodes would be sub-routines, or reusable units of code. - Eakan But the truth is, Hugo is not a programming language. It is a static site generator that generates content based on markdown files. Markdown syntax is pretty limited. So how do you make your website as attractive and engaging as any other modern website with these limitations? ...

December 26, 2023 · 5 min · 981 words · Eakan Gopalakrishnan
System Design

Azure functions with Swagger and OpenAPI

What is OpenAPI specification? This is a specification for machine-readable interface files for describing, producing, consuming and visualizing RESTful web services. Apparently, this was earlier part of the Swagger framework, it became a separate project sometime in 2016 overseen by the Open API initiative, an open-source collaboration project of the Linux Foundation. I am not trying to sound clever here. That’s all taken from wikipedia as I just wanted to give you an idea of what it is without having to leave this post. ...

September 19, 2021 · 5 min · 952 words
Search

Client Side Search for your Hugo Blog with Fuse.js

Featured Image is “Search!” by Jeffrey Beall is licensed with CC BY-ND 2.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-nd/2.0/ In an earlier post about migrating from wordpress to self hosted on Azure, I took you through some steps to host a blog on Hugo. But I don’t know if you realised the blog didn’t have a search function. I couldn’t really search for articles! That I felt was a step back from my wordpress blog where I had the ability to search. Not just me, but you know, if anyone ever wants to search for a particular content in my blog, they really didn’t have a way to do that, unless google let them search. ...

May 1, 2021 · 8 min · 1620 words
ReactJs

React aka Reactjs

So last week I did a little example app following instructions by Brad Traversy. To give credit where credit is due, I have linked his video right here in my post. I’m going to share the gist of what I learned here as part of this post. Because sometimes, you might just want to get an overview, you may not want to get hands on and start coding. This is a very high level overview of some of the concepts. And the source code can be found in my github repository. ...

January 23, 2021 · 9 min · 1882 words · Eakan Gopalakrishnan