I need to create a website that holds some events data as well as other content, it will also maybe need to grab some data from APIs.

Since I’m skilled with Hugo (static site generator) I thought I could use that but it’s turning out it’s a total mess actually.

In Hugo I can have contacts (like events organizers) as taxonomy, but that is a different format (yaml) than CSV or vcard, and it’s also static, meaning that if I edit a contact it will only change in Hugo. So I found myself having to manage contacts in 4 different places, in 4 different ways: Hugo yaml, Thunderbird, google contacts, CSV (from earlier days)… And I will add mailchimp once I’ll also add a newsletter. This ensures my contacts are kinda becoming a mess.

Same goes with events, it’s okay if I generate events in Hugo, but if I grab events from APIs and then the API content changes I will have to modify it on Hugo as well.

Everything it’s turning out to be a total mess essentially and I think I tried to use something simple to build something quite complex, I realized the complexity later.

Now ideally I would like to be able to have my contacts, my newsletter, my content in one single place ato have everything nicely synced and not having to deal with 30 different lists or formats.

What should I do?

I know about the jamstack and headless CMS like ghosts and I was wondering if they could be a good solution, or if I should opt for a full CMS. Obvious solution would be WordPress but I wouldn’t really want to mess with all the plugins.

Also I spent quite a but of time in building my templates for the Hugo website and throwing everything away would feel awful, if there’s a way to reuse them (?).

I know some JavaScript basics but I would avoid it if possible.

  • Kissaki
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    Makes me wonder if the main content source would not be better separately, from which you generate the other stuff - e.g. Hugo Markdown page source.

    I’m still not sure I grasp the fundamental structure of your data and desired workflows.

    Hugo being simple Markdown files for content, if they can not be used as the source of truth, maybe that can be elsewhere, maybe even in Markdown, and you copy to Hugo? Then you’d be less restricted in your form of data and doing other things with separate tooling like sync to other services.

    If you already invested into Hugo theming I’d also be hesitant about switching to a CMS/hosted solution. Especially since I suspect there’s no ready solutions for your integrations? I assume you’d have to do the integrations yourself. If that’s the case, my intuition says to better be independent of a CMS (with unknown efforts or how long it will remain useful). Once you’re in a CMS env as a primary source it owns the data and exporting won’t be as easy as if you have the primary source separately in a simpler, independent manner.


    You say you have contacts, newsletter, events. You said you have Hugo (yaml), Thunderbird, Google Contacts, CSV.

    Is it a matter of synchronizing contacts between them? Or more? Sending the newsletters?

      • Kissaki
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        I’d guess trying anything is fine if you keep a prototype and experimental mindset. You could try a CMS that looks interesting or viable. Maybe that helps getting a better idea of viability with specific products or approaches?

        Personally, I’d try/experiment with what I laid out in my last comment - have data files (maybe json or markdown files) and generate and push and pull data from and to that. But that may be because of existing experience and expertise. Not necessarily the best approach for others.

        Using a CMS means more integration, which has upsides and downsides.