🍭 My blog built with Astro + TypeScript. Neat.
--- - [🎉 Features](#-features) - [🌅 Image handling](#-image-handling) - [🎆 EXIF extraction](#-exif-extraction) - [💰 Cryptocurrency donation via Web3/MetaMask](#-cryptocurrency-donation-via-web3metamask) - [🔍 Search](#-search) - [🕸 Related Posts](#-related-posts) - [📝 GitHub changelog rendering](#-github-changelog-rendering) - [🌗 Theme Switcher](#-theme-switcher) - [💎 SVG assets as components](#-svg-assets-as-components) - [`redirect_from`](#redirect_from) - [RSS \& JSON feeds](#rss--json-feeds) - [✨ Development](#-development) - [🔮 Linting](#-linting) - [🔮 Type Checking](#-type-checking) - [👩🔬 Testing](#-testing) - [🎈 Content creation helpers](#-content-creation-helpers) - [Add a new post](#add-a-new-post) - [🚚 Deployment](#-deployment) - [S3 Deployment](#s3-deployment) - [🏛 Licenses](#-licenses) - [Posts](#posts) - [Photos \& images](#photos--images) --- ## 🎉 Features The whole [blog](https://kremalicious.com) is a statically exported site built with [Astro](https://astro.build) and TypeScript. Almost all components are Astro or native Web Components, with some React components loaded client-side. Styling happens through a combination of basic global styles and on components level either through CSS modules or CSS in `