Today's tip will give another "peek behind the curtain" of how Aaron and I author and publish these tips. Recently, we shared how each tip exists as a Markdown file, but let's go back even further in the life of a newsletter.
Each email you read starts its life as a GitHub issue. When the spark of an idea occurs to me, I'll capture that as a draft issue on a GitHub project board. Then, once a week, I'll sit down and write out the next week's batch of emails. Those issues then get reviewed, and finally we publish the tips in ConvertKit and the masteringlaravel.io tips archive.
After a couple weeks of doing this, I identified some things that were causing friction. For example, in addition to the body of the email, we need the date it's going to be published, the slug to use in the site archive, the subject line, and a preview summary. Those fields existed as "front matter" in the Markdown file, but I wasn't creating it in the original GitHub issue.
Here is where issue templates come into play. Now each idea immediately becomes a more structural document through use of the issue template. And, even better, these issue templates are part of the git repository, so they can be versioned right alongside the code.
As a side note, did you notice that a couple recent tips now are a bit "meta" and talking about how we publish this newsletter? A big reason for that is that every single tip we share comes from our real-world experience, likely something one of us did within the last week or two. I've never liked reading tips that seem like someone threw a dart at the Laravel docs and picked a random feature to share. We will continue to share real-world tips because we think they're a lot more valuable to you.