Back to Blogging
After a hiatus, I’ve decided to give blogging another go. My previous blog was set up using Jekyll and hosted on GitHub. Since I blogged infrequently, I didn’t feel the need to explore other platforms. However, a recent shift in my attitude towards social media, specifically Twitter, and the ease of writing with GenAI, rekindled my interest in blogging. I yearned for a more aesthetic and user-friendly experience, leading me to transition my blog to Hugo, using the Papermod theme.
Steps for Setting Up Everything
There are many platofrms that allow you to setup a blog/newsletter. Substack and Wordpress for example. I chose to setup everything myself since I wanted to use Hugo and figured it would be simple enough. Here’s a high-level step-by-step breakdown of what I did:
- Forking the Papermod Theme: You don’t have to fork it but it makes it easy to modify. I use the fork as a submodule within my Hugo blog repo.
- Domain Registration with CloudFlare: (Optional) Chose a new domain and registered it through CloudFlare. ($10/year)
- Creating a New Blog with Hugo: Followed their guide, it’s very simple. The only difference is that I used my fork of the Papermod repo.
- Deploying with Render: Followed Render’s guide to set up deployment. While there are many options, including GitHub Pages, I’ve heard good things about Render and wanted to try it out.
- Email subscription form: Many options available. I went with ConvertKit that has a free version for up to 1000 subscribers. I created a form (Grow -> Landing pages & forms) and then added the js code snippet it created to my forked Papermod repo
layouts/_default/baseof.html
. You can check my Github as both the website code and the fork are public. - Email Redirection and Update on ConvertKit: Set up a custom email redirect (from contact@[my-domain] to my personal Gmail address) on CloudFlare and updated it on ConvertKit. This is not required but they recommend not using a free email like Gmail to send the subscription confirmation.
You should also add a config.yml file under the papermod theme repo. You can find a site example here. Another great site and one I learned a lot from is Yanir Seroussi’s blog.
So far I didn’t need to pay anything besides acquiring the domain name.