56,966 blogs · [ { "id": "01a08753-4d50-72df-9698-217e184aaab0", "title": "Accurate text lengths with `Intl.Segmenter` API", "url": "https://blog.sangeeth.dev/posts/accurate-text-lengths-with-intl-segmenter-api/", "published_at": "2025-09-02T17:20:33+00:00" }, { "id": "01a08753-4d50-72df-9698-217e185ebe47", "title": "Running Proxmox 9 on a laptop in clamshell mode with display off", "url": "https://blog.sangeeth.dev/notes/running-proxmox-9-on-a-laptop-in-clamshell-mode-with-display-off/", "published_at": "2025-08-11T01:52:29+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1863c568", "title": "Using VLC to find out personal audio file quality preferences", "url": "https://blog.sangeeth.dev/notes/using-vlc-to-figure-out-audio-file-quality-preferences/", "published_at": "2025-06-30T19:28:42+00:00" }, { "id": "01a08753-4d50-72df-9698-217e18d02284", "title": "Preview app adds Dark Mode toggle for PDFs on macOS Tahoe, iOS and iPadOS 26", "url": "https://blog.sangeeth.dev/notes/preview-app-adds-dark-mode-toggle-for-pdfs-on-macos-tahoe-ios-and-ipados-26/", "published_at": "2025-06-18T19:45:54+00:00" }, { "id": "01a08753-4d50-72df-9698-217e195279cb", "title": "Allowing friends to surf the web via my home network with Tailscale grants", "url": "https://blog.sangeeth.dev/notes/allowing-friends-to-surf-the-web-via-my-home-network-with-tailscale-grants/", "published_at": "2025-06-02T20:03:33+00:00" }, { "id": "01a08753-4d50-72df-9698-217e19f8210d", "title": "Blocking TP-Link Routers from Phoning Home with AdGuard Home Custom Filtering Rules", "url": "https://blog.sangeeth.dev/notes/blocking-tp-link-routers-from-phoning-home-with-adguard-home-custom-filtering-rules/", "published_at": "2025-05-21T20:58:28+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1a7237d9", "title": "Witcher 3 turns 10", "url": "https://blog.sangeeth.dev/posts/witcher-3-turns-10/", "published_at": "2025-05-19T11:24:52+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1aa16824", "title": "Updating OpenWrt installation with Attended SysUpgrade", "url": "https://blog.sangeeth.dev/notes/updating-openwrt-installation-with-attended-sysupgrade/", "published_at": "2025-05-19T11:12:26+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1b9d77fb", "title": "Caution: Ventoy source tree includes unverified prebuilt binaries", "url": "https://blog.sangeeth.dev/notes/caution-ventoy-source-tree-includes-unverified-prebuilt-binaries/", "published_at": "2025-05-06T18:15:11+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1c230a71", "title": "Sayonara TIL, Hello Notes", "url": "https://blog.sangeeth.dev/notes/sayonara-til-hello-notes/", "published_at": "2025-05-06T17:13:48+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1c6cbb50", "title": "Using iframe's `srcdoc` attribute to embed dynamically generated HTML", "url": "https://blog.sangeeth.dev/posts/using-iframes-srcdoc-attribute-to-embed-dynamically-generated-html/", "published_at": "2025-03-12T14:26:03+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1d117961", "title": "CSS `stretch` sizing keyword", "url": "https://blog.sangeeth.dev/notes/css-stretch-sizing-keyword/", "published_at": "2025-03-08T19:09:08+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1dde27cb", "title": "CSS @scope at-rule allows styling DOM subtrees", "url": "https://blog.sangeeth.dev/notes/css-at-scope-rule-allows-styling-dom-subtrees/", "published_at": "2025-03-05T06:15:41+00:00" }, { "id": "01a08753-4d50-72df-9698-217e1ebc333e", "title": "Generating OpenGraph images using HTML, CSS and Cloudflare Workers", "url": "https://blog.sangeeth.dev/notes/generating-opengraph-images-using-html-css-and-cloudflare-workers/", "published_at": "2025-02-27T18:29:20+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c55661c7", "title": "Setting up pre-commit hook with Lefthook", "url": "https://blog.sangeeth.dev/notes/setting-up-pre-commit-hook-with-lefthook/", "published_at": "2025-02-26T17:41:30+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c64fdabf", "title": "Streaming my Spotify library from the terminal with spotify_player", "url": "https://blog.sangeeth.dev/posts/streaming-my-spotify-library-from-the-terminal-with-spotify-player/", "published_at": "2025-01-31T15:22:48+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c727a8df", "title": "Quickly turn FormData into a plain object with Object.fromEntries()", "url": "https://blog.sangeeth.dev/notes/quickly-turn-formdata-into-a-plain-object-with-object.fromentries/", "published_at": "2024-11-25T20:48:17+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c7a511f7", "title": "Bypass online account requirement during Windows 11 installation", "url": "https://blog.sangeeth.dev/notes/bypass-online-account-requirement-during-windows-11-installation/", "published_at": "2024-11-21T04:06:42+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c7c31dca", "title": "Native toggleable switch with on Safari", "url": "https://blog.sangeeth.dev/notes/native-toggleable-switch-with-input-switch-on-safari/", "published_at": "2024-11-21T02:11:44+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c80a99a9", "title": "Syncing macOS text replacements with Raycast", "url": "https://blog.sangeeth.dev/notes/syncing-macos-text-replacements-with-raycast/", "published_at": "2024-11-16T10:55:13+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c8e059fe", "title": "Force use native player to watch videos on Safari", "url": "https://blog.sangeeth.dev/notes/force-use-native-player-to-watch-videos-on-safari/", "published_at": "2024-11-06T15:23:47+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c909a6ab", "title": "Custom domains with HTTPS for your localhost servers on macOS", "url": "https://blog.sangeeth.dev/posts/custom-domains-with-https-for-your-localhost-servers-on-macos/", "published_at": "2024-11-04T18:25:47+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0c9bd5441", "title": "Sangeeth uses…", "url": "https://blog.sangeeth.dev/uses/", "published_at": "2024-11-01T23:23:27+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0ca2c33c8", "title": "Excluding directories from build in Hugo", "url": "https://blog.sangeeth.dev/notes/excluding-directories-from-build-in-hugo/", "published_at": "2024-11-01T20:39:19+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cad3beab", "title": "Saving a web page in a single file", "url": "https://blog.sangeeth.dev/notes/saving-web-page-in-single-file/", "published_at": "2024-11-01T14:47:16+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cb7766f4", "title": "iOS Safari doesn't generate a thumbnail for video tags", "url": "https://blog.sangeeth.dev/notes/ios-safari-does-not-generate-a-thumbnail-for-video-tags/", "published_at": "2024-10-29T03:19:33+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cbcccd2c", "title": "TIL about TILs", "url": "https://blog.sangeeth.dev/notes/til-about-til/", "published_at": "2024-10-29T03:19:33+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cbcdb661", "title": "Thanos snap annoying things in a website with Safari on macOS Sequoia", "url": "https://blog.sangeeth.dev/posts/thanos-snap-safari-sequoia/", "published_at": "2024-10-28T05:35:10+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cc0dbd49", "title": "Changing the default monospace font in macOS browsers", "url": "https://blog.sangeeth.dev/posts/changing-default-monospace-font-macos-browsers/", "published_at": "2024-10-14T14:05:34+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cca20607", "title": "Saving when you forget to `sudo vim`", "url": "https://blog.sangeeth.dev/posts/saving-when-you-forget-to-sudo-vim/", "published_at": "2024-09-06T00:47:55+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cd22280b", "title": "Third time's the charm", "url": "https://blog.sangeeth.dev/posts/third-times-the-charm/", "published_at": "2024-09-02T20:31:46+00:00" }, { "id": "01a08753-4d51-7377-a763-eca0cdda54d4", "title": "About", "url": "https://blog.sangeeth.dev/about/", "published_at": "2024-09-01T23:03:37+00:00" } ] posts Claim your blog
Back to blog.sangeeth.dev
Blog · corpus.blog/blogs/blog.sangeeth.dev/posts

blog.sangeeth.dev

blog.sangeeth.dev

2025

2024