My Second Post

03/01/2026 - Arthur Richard

Welcome to my blog! This is my first post, written in Markdown.

It's easy to write lists:

And even code blocks:

console.log("Hello, world!");
def convert_articles():
    """
    Converts Markdown articles to HTML.
    """
    articles_dir = "_articles"
    template_path = "templates/article-template.html"
    output_dir = "public/articles"

    if not os.path.exists(output_dir):
        os.makedirs(output_dir)

    with open(template_path, "r", encoding="utf-8") as f:
        template = f.read()

    for filename in os.listdir(articles_dir):
        if filename.endswith(".md"):
            filepath = os.path.join(articles_dir, filename)
            with open(filepath, "r", encoding="utf-8") as f:
                post = frontmatter.load(f)

            content_lines = post.content.strip().split('\n')
            if content_lines and content_lines[0].startswith('# '):
                post.content = '\n'.join(content_lines[1:])

            html_content = markdown.markdown(
                post.content,
                extensions=['fenced_code', 'codehilite']
            )

            article_html = template.replace("ARTICLE_TITLE", post.metadata.get("title", "Untitled"))
            article_html = article_html.replace("ARTICLE_DATE", post.metadata.get("date", "Untitled").strftime("%d/%m/%Y"))
            article_html = article_html.replace("<!-- ARTICLE_CONTENT -->", html_content)

            output_filename = os.path.splitext(filename)[0] + ".html"
            output_filepath = os.path.join(output_dir, output_filename)

            with open(output_filepath, "w", encoding="utf-8") as f:
                f.write(article_html)

            print(f"Converted {filename} to {output_filename}")

Lorem ipsum dolor sit amet, officia excepteur ex fugiat reprehenderit enim labore culpa sint ad nisi Lorem pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia. Reprehenderit nostrud nostrud ipsum Lorem est aliquip amet voluptate voluptate dolor minim nulla est proident. Nostrud officia pariatur ut officia. Sit irure elit esse ea nulla sunt ex occaecat reprehenderit commodo officia dolor Lorem duis laboris cupidatat officia voluptate. Culpa proident adipisicing id nulla nisi laboris ex in Lorem sunt duis officia eiusmod. Aliqua reprehenderit commodo ex non excepteur duis sunt velit enim. Voluptate laboris sint cupidatat ullamco ut ea consectetur et est culpa et culpa duis.

keyboard

toolbelt