easrng's blog

Hello World - My first post on Maylog, and the journey here

 This post was migrated from Maylog

 Maylog has been shut down, this post contains outdated information

This is my first post here on Maylog, and I am going to talk about how I made it. I have been looking for a blogging solution for a while, but none really fit my needs. Wordpress was too heavy, Blogger was too Googly, Medium has paywalls, etc. I considered Jekyll, but it seemed somewhat out of date and was hard to get up and running. After a few misadventures with Github actions and markdown, I gave up. While working on a different project that needed to send email, I was using https://www.mail-tester.com/ for insight into why my (not spammy) emails were being sent to spam, and it turns out, sending email when you don't have an MX record setup is a big red flag. To set up inbound email, I turned to https://forwardemail.net/, a service that will forward inbound emails to another email address. While looking at their docs, I saw they had added webhook support. I was intrigued. I was thinking about use cases when it hit me. I could use this to publish to a blog. I wrote a Node app with Express and a Sqlite database, and got emails to go into the database. Next, I made code to generate JSON feeds. I used an off the shelf npm package to convert them to Atom, and wrote a custom JSON feed to HTML converter. Whenever a post is made, the server rebuilds the site and deploys to https://surge.sh/.

To use Maylog, simply send an email to "Your Blog Name<shortblogname@maylog.easrng.us.to>", and the server will reply with the link to your post. Choose the names carefully, I haven't set up a way to change them yet. The email's subject will be the post title, and the plain text body will be the post's text. Once someone posts to a Maylog blog, only posts from their email are accepted. DKIM is required on incoming mail (If I set things up right), so people can't post to your blog.

I can't wait to see what you write! Thanks for reading, next I will post about how I set up a custom domain system for Maylog.