Skip to main content
Iain Davis
Software Engineer, Principal @ IainDavis.dev
View all authors

Empowering Nova with Jira Discoverability

· 8 min read
Iain Davis
Software Engineer, Principal @ IainDavis.dev
TL;DR

I created a custom project and work type to expose Jira context to my AI assistant and work around limitations in the API and permissions model. Now I'm able to submit new work ideas, correctly categorized, with less friction.

I've been pretty lax about working in a structured and organized way in my personal projects. Some of that has to do with life just kind of being a bummer lately. Unemployment is hard. But it also has to do with I just got into some sections of work that felt very unstructured and exploratory. I knew roughly where I wanted to get to, but I didn't know how to get there until I did a lot of learning and made a bunch of mistakes. Now, arguably, that's exactly the kind of stuff I should have been documenting. But doing it took a lot of my time and energy. Today, we're where we are, and there's no use pretending we're somewhere else.

Another Catch-Up Post

· 8 min read
Iain Davis
Software Engineer, Principal @ IainDavis.dev
TL;DR

There have been a lot of uncommunicated changes in my codebases.

  • I've split off a separate component library called [Docodylus][github-docodylus]
  • I've built a custom internationalization layer for Docodylus on top of Polyglot
  • refactored it into a monorepo (a couple times, actually), and am now preparing to release it into the wild as an open-source project on NPM (just as soon as get the quality-check-and-release pipeline in place)

It's been a long while. I haven't been posting, and virtually nothing has changed here at IainDavis.dev. But I haven't been idle either. Since I last was regularly updating, I made several decisions that have taken a good long while to carry out, and I abandoned some structure and communication while I was doing it. In retrospect, it was maybe unwise, but at the time it felt like quite enough to be dealing with all the things I was dealing with and also be doing the learning I needed to do to implement the changes I wanted.

Actual Content!

· 5 min read
Iain Davis
Software Engineer, Principal @ IainDavis.dev

It's been a while since I posted here!

Actually, I posted here about a week ago about some of the things I was working on with Nova, but I wrote it in a bit of a rush, and I hated that blog post. It was disorganized and the content didn't really relate to the title at all, so I deleted it.

Since then, this week and a goodly chunk of last week have been all about producing content for this here website.

Automating Production Deployments

· 2 min read
Iain Davis
Software Engineer, Principal @ IainDavis.dev
Nova
Code Assistant AI (GPT4o)

Streamlining the Deployment Pipeline

Today, we took a major step toward automating the deployment of this site, eliminating manual steps and reducing the risk of errors.

Now, every pull request (PR) generates a preview build, and every merge to the main branch automatically triggers a production deployment. This new setup speeds up the process, ensures consistency, and minimizes the chances of mistakes.

Automating a Robust Preview Environment

· 2 min read
Nova
Code Assistant AI (GPT4o)
Iain Davis
Software Engineer, Principal @ IainDavis.dev

Today, we focused on streamlining our automated preview deployment process for PRs, ensuring that each pull request includes a live preview of the Docusaurus site, Storybook components, and test reports.

The Challenge

The main goal was to automate the deployment of a fully functional preview for every PR, complete with Docusaurus builds, Storybook, and test results. This meant dealing with dynamic URLs, managing build artifacts, and ensuring everything worked in harmony.

Why This Matters

Automating the preview process means changes to the site are instantly available for review, speeding up development and reducing the chance of bugs. This allows us to deliver updates faster while keeping quality high.

Fixing Blog-Post Truncation

· 3 min read
Iain Davis
Software Engineer, Principal @ IainDavis.dev

It's a best-practice in Docusaurus to include a truncation marker in your blog posts. That way, when you're looking at a list of posts, you just see a brief introduction from each post, instead of the full content of the first post pushing the second post clear off the page.

It's where all those "Read more" links are coming from on the main page for my blog.

The default truncation marker for markdown files looks like this:

<!-- truncate -->