<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Muthu Palaniyappan Olagappan</title>
		<link>https://muthupalaniyappan.com/</link>
		<description>Recent content on Muthu Palaniyappan Olagappan</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<lastBuildDate>Sat, 26 Sep 2026 08:00:00 +0530</lastBuildDate>
		
			<atom:link href="https://muthupalaniyappan.com/feed.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Rich Social Previews with JSON-LD</title>
				<link>https://muthupalaniyappan.com/blog/rich-social-previews-with-json-ld/</link>
				<pubDate>Fri, 25 Sep 2026 14:00:00 +0530</pubDate>
				<guid>https://muthupalaniyappan.com/blog/rich-social-previews-with-json-ld/</guid>
				<description>&lt;h1 id=&#34;rich-social-previews-with-json-ld&#34;&gt;Rich Social Previews with JSON-LD&lt;/h1&gt;&#xA;&lt;p&gt;Sharing a link should look good. This post covers the metadata that makes it happen.&lt;/p&gt;&#xA;&lt;h2 id=&#34;open-graph-and-twitter-cards&#34;&gt;Open Graph and Twitter cards&lt;/h2&gt;&#xA;&lt;p&gt;Every page emits &lt;code&gt;og:*&lt;/code&gt; and &lt;code&gt;twitter:*&lt;/code&gt; tags. The social image falls back to a&#xA;site-wide default when a post doesn&amp;rsquo;t specify its own, and all image URLs are&#xA;absolute so platforms can fetch them.&lt;/p&gt;&#xA;&lt;h2 id=&#34;json-ld&#34;&gt;JSON-LD&lt;/h2&gt;&#xA;&lt;p&gt;Structured data is built as a map and serialized once, guaranteeing valid JSON.&#xA;Articles emit &lt;code&gt;BlogPosting&lt;/code&gt;, the profile emits &lt;code&gt;ProfilePage&lt;/code&gt;, and list pages like&#xA;the blog index emit a &lt;code&gt;CollectionPage&lt;/code&gt; with an &lt;code&gt;ItemList&lt;/code&gt; of posts.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Getting Started with Hugo</title>
				<link>https://muthupalaniyappan.com/blog/getting-started-with-hugo/</link>
				<pubDate>Tue, 15 Sep 2026 09:30:00 +0530</pubDate>
				<guid>https://muthupalaniyappan.com/blog/getting-started-with-hugo/</guid>
				<description>&lt;h1 id=&#34;getting-started-with-hugo&#34;&gt;Getting Started with Hugo&lt;/h1&gt;&#xA;&lt;p&gt;Hugo is a fast static site generator written in Go. In this post I walk through&#xA;the pieces that make up this very site.&lt;/p&gt;&#xA;&lt;h2 id=&#34;content&#34;&gt;Content&lt;/h2&gt;&#xA;&lt;p&gt;All content lives under &lt;code&gt;content/&lt;/code&gt;. Each Markdown file has a TOML front matter&#xA;block that drives the page metadata — title, description, dates, and whether the&#xA;page is a blog article or a profile.&lt;/p&gt;&#xA;&lt;h2 id=&#34;templates&#34;&gt;Templates&lt;/h2&gt;&#xA;&lt;p&gt;The shared &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; (SEO, Open Graph, Twitter cards, and JSON-LD) lives in&#xA;&lt;code&gt;layouts/_default/baseof.html&lt;/code&gt;. Single posts use &lt;code&gt;single.html&lt;/code&gt;, and section&#xA;indexes like this blog use &lt;code&gt;list.html&lt;/code&gt;.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
