I ran my own blog for many years but recently I suspect my server got hacked, and after reinstalling I want to do things a little differently.

I’d like to move away from PHP and I don’t really need a dynamic CMS anyhow.

So far I’ve been using PicoCMS which serves content from markdown pages with a little header. I got quite good at it, wrote my own theme and a few plugins. The templating language is Twig so something similar would be a boon for me.

Writing content in markdown is my most important requirement, or rather reusing the existing pages with as little massaging as possible. Here is one example:

---
Title: Create WiFi Hotspot with NetworkManager
date: 24.11.2022
Tags: archlinux,android
template: post
---

# Make sure required depenencies are installed

blablablablablablablabla

I really want a tag cloud, which used to be my only sorting mechanism apart from date. Most generators, at first glance, offer a tags page. Honestly I have no idea if I’d have to template the cloud myself but tag functionality seems to be common, I guess?

What I don’t want is any sort of web UI or even builtin server functionality or other bells and whistles for the user. I prefer to ssh into the server and do things on the CLI.

Now my most important constraint is that I want to use what’s available in (or as a) Debian repositories. After a quick search around it boils down to:

Searching for similar topics I found this and this. I read all the comments.

TIA


edit: Lots of people mention Hugo. Why would I choose that over, say, Jekyll or Pelican?
Personally I feel drawn more towards Python than Go or Rust, and a Twig-like (e.g. Jinja) templating language. If that’s idiotic, please let me know why.
Also please remember I’m not running a github (or other similar VCS) page but have a dedicated VPS running Debian Stable. Deployment or containerization are of no interest to me.

  • shiftymccool@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 hours ago

    Not sure if this will work for you but I keep my homelab documentation in markdown, mainly edited with Obsidian. I wanted an easy way to access via web and found Perlite. I have this pointed at a notes folder on my server which is auto-updated with Syncthing. No fuss, just works

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 hours ago

      The search is nice, certainly a good thing to have in a blog. It has interesting features, most of which I’ll probably never use. No theming afaics but I’m sure that can be remedied. Your end result certainly looks nice enough.

      Why would I otherwise sway from my hard requirements to use this? It is not in Debian’s repositories. However, a simulated install suggests that it has all dependencies bundled. What’s it really based on? Python I guess?

  • nycki@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    7 hours ago

    11ty is my favorite! cross-platform, good defaults, built-in tag support, and just generally good learning curve.

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      2 hours ago

      Why would I choose that over my requirements? C’mon, just throwing names isn’t enough.

      What templating language does it use?

  • liliumstar@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    4
    ·
    8 hours ago

    I would also recommend Hugo, and believe it meets your requirements. The header markdown looks very similar to what you wrote, and it has tags. I’m not sure about a tag “cloud” the way you imagine it, but it’s worth looking into.

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 hours ago

      Isn’t it overkill? I’m also skeptical because it seems tied to the github universe.

      And here’s what other people commented about Hugo:

      • “It gets admittedly more complex if you’re wanting to write your own theme though.”
      • “But as soon as you do want to customize it, you’re stuck learning one of the most esoteric languages that wasn’t meant as a joke.”
      • “The documentation is unclear and there’s a chicken and egg problem about how to learn Hugo.”
  • manxu@piefed.social
    link
    fedilink
    English
    arrow-up
    3
    ·
    7 hours ago

    I went the same direction, from WordPress to static site generation. I did the same evaluation as you are trying to do and ended up with Hugo, mostly because there is a lot of support available for it. My runner up was Pelican, because I was fluent in Jinja2, but I didn’t want to mess around with the templates and Hugo’s were prettier. Sue me, I am shallow.

    The one regret I have about Hugo is that the templating language is challenging. I am trying to be as neutral as possible, but it seemed like even simple things were complicated to achieve. If someone would come up with a Hugo that speaks Jinja2, I’d be really delighted.

    Other than that, conversion from WordPress to Hugo was relatively straightforward, despite needing to find a gallery component and converting menus. Hugo is indeed very fast in processing, which become important when your blog has thousands of articles.

    I set up the blog as a private git repository. The server pulls from it, then runs Hugo and a full text search engine, and the content is visible and searchable within five minutes on update.

  • wagesj45@fedia.io
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    6 hours ago

    I use Publii, which is a local application that supports markdown pages, has an interface similar to a CMS, and renders the entire site out to static html files that you upload to any web server. It can dump to a local folder, or ftp the files for you. It has a lot of good themes, and a blank theme that you can use to get started if you want to roll your own like I did.

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      3 hours ago

      Why would I choose that over my requirements? It’s not in Debian repos.

      Also I seem to remember from reading the comments in other posts, that this is a GUI app? Does it even use Markdown files?

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 hours ago

      GNU/Guile Scheme

      What is that?

      Why would I choose Haunt over my requirements? It’s not in Debian repos.

  • floquant@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    6 hours ago

    Astro may also be worth looking into if you’d like a SSG that is still capable of rendering some dynamic content

    • A_norny_mousse@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 hours ago

      Interesting. Big Names.

      It’s based on some js framework, right? Probably pulls in Gigabytes of dependencies.

      Why would I choose that over my requirements? It’s not in Debian repos.

  • Omega@discuss.online
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 hours ago

    I like Hugo, though it’s been the only one I used. May get too involved, and some themes have features others may not have, for example, comment integration may not exist for some themes.

      • Omega@discuss.online
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 hours ago

        Self host and third party exists. You probably could use Lemmy as a shoddy way to make comments too

        • A_norny_mousse@feddit.orgOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 hours ago

          Self host

          On a static site generator? Can you link me to that please?

          What about Hugo’s templating language? It’s been said to be daunting:

          • “It gets admittedly more complex if you’re wanting to write your own theme though.”
          • “But as soon as you do want to customize it, you’re stuck learning one of the most esoteric languages that wasn’t meant as a joke.”
          • “The documentation is unclear and there’s a chicken and egg problem about how to learn Hugo.”
          • Omega@discuss.online
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 hour ago

            I was fighting with my linter tbh still have no clue how to write html in go like its php

            And, for the comments part, I haven’t looked into it, it’s likely just a JavaScript file that connects to your server or an external one and pulls all data and whatever, its the single dynamic part and it’s done with js

  • thagoat@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    8
    ·
    edit-2
    11 hours ago

    Hugo. Most definitely. I use it for 5 different sites. The syntax is easy. Posts, pages, etc are in easy markdown. Compiles your site (directly to your web root if you like) in under a second. It’s awesome.

  • anotherandrew@mbin.mixdown.ca
    link
    fedilink
    arrow-up
    6
    ·
    12 hours ago

    This is a post near and dear to my heart. I too am looking for something markdown-centered, static, reasonable for code/technical content and that can embed not just photos but browser-side js graphs based on data within the markdown or REST calls. It’s been a few years since I went down this rabbit hole and I got lost very quickly. Thank you for posting, I’ll be revisiting over the next few days to see what the fediverse has to say!

  • barkingspiders@infosec.pub
    link
    fedilink
    English
    arrow-up
    5
    ·
    13 hours ago

    Also curious, have a similar project in mind. I’ve tinkered with jekyll a little and heard good things about Hugo. Hopefully people can speak to some of these.