2 minute read

My Blogging Workflow

Table of Contents

Introduction

I’ve been working on some other blog posts, but it’s taking longer than usual because I haven’t had much free time. In the meantime, I figured I would create a short, simple post focusing on my blogging workflow.


Tools


How It Works

Astro is where all the magic happens. You can think of it as WordPress, minus the website hosting. It handles all the content and theming for the website. The content is written using a specific flavor of Markdown called MDX that allows for embedded JSX. JSX gives me control over website behavior. Here’s an example involving cursor styling:

My text editor of choice is Neovim. I’ve been using it religiously for several years now and really enjoy its modal editing framwork. I also use various Neovim plugins to extend its functionality. For example, using a snippet manager, I can easily add metadata to new blog posts and create code blocks. By pairing this with Tmux, a terminal multiplexer, I can easily run and switch between multiple instances of Neovim and corresponding blog posts. I can also run a local server to preview all drafts on my website before actually publishing.

Git gives me the ability to jump between iterations of my work and essentially serves as a version history tool. I can look back on my drafts and compare changes between them. Additionally, I am able to sync draft posts and work across many devices by pushing them to GitHub. I utilize separate branches both on Git and GitHub to distinguish syncing from publishing.

The website is based on this theme that I’ve made several changes to, such as adding LaTeX support. It is hosted on Netlify.