1 min read

Ghost Theme Customizations

This is the post where I'm documenting the tweaks and updates I'm making to the Ghost theme for this website. At the end of this transformation, this will not just be a blog in publication style. It will be a personal website with information about my work organized in a more structured manner to be useful to visitors.

  • Added social share icons from another theme to the bottom of the post and defined specific styles for it so that the b                                                                                                        Posts                             ackground color for it is not tied to the primary color. Spaced the entire element to make sure it looks aesthetically good.
  • Added a default email subscription feature to appear in all posts. Customized the styles to render correctly. I picked up the basic email subscription component from a variant of the Casper theme.
  • Customized the theme to render more like the Ghost changelog website. Especially, added tags to posts in the index view. Also dynamically render a post without a featured image so that the part with the image does show as blank but instead the entire title text takes the space.
  • Add label to email subscription pages based on tags.
  • Add id to the email subscription form HTML element so that I can internally link a CTA
  • Add filter criteria in the home page post index so that posts tagged with a certain label are not listed. This is to hide the high-frequency unstructured posts from visitors who will likely not find them interesting.
  • TODO: Add colors to the label in the index page for different tags
  • TODO: Fix the gap that appears on the index page between list items. Add a Month and Year element on the index, to cluster posts by month of publication.
  • TODO: Dropdown menu from Liebling
  • TODO: Dark mode like Alto
  • Host the website on the root domain and set up redirect rules for linked traffic to the blog subdomain. Prefer to use redirects within ghost for this but if not possible, configure these in traefik as a permanent redirect (likely easier).