Hello World!
Welcome to my blog! This blog was written from scratch in D using vibe.d and commonmark-d. I also created two libraries to help me with developing it:
- markdata - a markdown metadata parser and deserializer
- ffeedd - "Fun feed D", a RSS 2.0 and Atom 1.0 feed generator
Both of these libraries are licensed under LGPL-3.0.
Trivia
There isn't much more to talk about here, so have some fun facts:
This website was originally supposed to be an URL shortener, embed generator and gist written in C#. I wasn't sure which framework should I use: ASP.NET Core, Blazor, or Blazor WASM. This resulted in me rewriting the website 3 times. The blog part was originally supposed to be a part of ryhon.ga using ASP.NET Core.
Originally I didn't intend to add RSS support for the blog, however that changed when I wanted to create an Android app for itch, which has a limited API and the only way of getting recommended games is by using the RSS feed or by downloading the HTML.
While writing ffeedd I had to create a function that converts date and time to a RFC 822 date-time string. When I looked up RFC 822 I found that RFC 822 is not just a format for date strings unlike RFC 3339, which I also used. RFC 822 is a message format, which has a header, similar to MultiMark's metadata
RFC 882 (source):
From: someone@example.com
To: someone_else@example.com
Subject: An RFC 822 formatted message
This is the plain text body of the message. Note the blank line
between the header information and the body of the message.
MultiMark (source):
Title: A New MultiMarkdown Document
Author: Fletcher T. Penney
John Doe
Date: July 25, 2005
Here you would put the body, however the source doesn't include it :)